
:root{
  --ke-ink:#111417;--ke-ink2:#24282b;--ke-gold:#d5aa69;--ke-gold2:#f0d1a1;
  --ke-paper:#fff;--ke-soft:#f5f5f2;--ke-line:#e7e4de;--ke-muted:#667078;
  --ke-radius:22px;--ke-shadow:0 18px 50px rgba(17,20,23,.10)
}
.ke-site{font-family:Prometo,Arial,sans-serif;color:var(--ke-ink)}
.ke-site *{box-sizing:border-box}
.ke-shell{width:min(1180px,calc(100% - 40px));margin:auto}
.ke-hero{background:#15191c;color:#fff;padding:86px 0;overflow:hidden;position:relative}
.ke-hero--real:before{content:"";position:absolute;inset:-30% -15% auto auto;width:650px;height:650px;border-radius:50%;background:radial-gradient(circle,rgba(213,170,105,.28),transparent 66%)}
.ke-hero .ke-shell{display:grid;grid-template-columns:1.35fr .65fr;gap:58px;align-items:center;position:relative;z-index:1}
.ke-overline,.ke-heading-label,.ke-pagehero>div>span,.ke-heading>span{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--ke-gold)}
.ke-hero h1,.ke-pagehero h1{font-size:clamp(3rem,6vw,5.6rem);line-height:.96;letter-spacing:-.045em;margin:14px 0 20px;color:#fff}
.ke-hero-copy>p{max-width:760px;font-family:Arial,sans-serif;font-size:1.2rem;line-height:1.75;color:rgba(255,255,255,.82)}
.ke-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.ke-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border-radius:999px;text-decoration:none!important;font-weight:800;transition:.2s ease;border:1px solid transparent}
.ke-btn:hover{transform:translateY(-2px)}
.ke-btn--gold{background:var(--ke-gold);color:#111!important}
.ke-btn--glass{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.25);color:#fff!important}
.ke-btn--light{background:#fff;color:#111!important}
.ke-btn--dark{background:#111;color:#fff!important}
.ke-hero-panel{border:1px solid rgba(255,255,255,.12);background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.02));border-radius:28px;padding:34px;box-shadow:0 35px 80px rgba(0,0,0,.3)}
.ke-hero-panel>span{font-size:.8rem;letter-spacing:.18em;color:var(--ke-gold)}
.ke-hero-panel strong{display:block;font-size:clamp(2.1rem,4vw,4rem);line-height:1.02;margin:20px 0}
.ke-hero-panel small{font-family:Arial,sans-serif;color:rgba(255,255,255,.65)}
.ke-quickbar{background:#fff;border-bottom:1px solid var(--ke-line)}
.ke-quickgrid{display:grid;grid-template-columns:repeat(4,1fr)}
.ke-quickgrid>div{padding:22px 24px;border-right:1px solid var(--ke-line)}
.ke-quickgrid>div:last-child{border-right:0}
.ke-quickgrid strong,.ke-quickgrid span{display:block}
.ke-quickgrid strong{font-size:1rem}.ke-quickgrid span{font: .86rem/1.5 Arial,sans-serif;color:var(--ke-muted);margin-top:4px}
.ke-section{padding:88px 0}
.ke-section--muted{background:var(--ke-soft)}
.ke-section--dark{background:var(--ke-ink);color:#fff}
.ke-heading{max-width:780px;margin-bottom:38px}
.ke-heading--row{max-width:none;display:flex;align-items:end;justify-content:space-between;gap:24px}
.ke-heading h2,.ke-two h2,.ke-contactgrid h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.05;letter-spacing:-.03em;margin:10px 0 14px}
.ke-heading p,.ke-two p{font:1.04rem/1.7 Arial,sans-serif;color:var(--ke-muted)}
.ke-section--dark .ke-heading p,.ke-section--dark .ke-two p{color:rgba(255,255,255,.70)}
.ke-catgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ke-cat{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;background:#fff;border:1px solid var(--ke-line);border-radius:18px;padding:22px;text-decoration:none!important;color:var(--ke-ink)!important;transition:.2s;box-shadow:0 7px 24px rgba(17,20,23,.04)}
.ke-cat:hover{transform:translateY(-3px);box-shadow:var(--ke-shadow);border-color:#dcc49f}
.ke-cat-icon{font-size:2rem}.ke-cat h3{margin:0 0 5px;font-size:1.08rem}.ke-cat p{margin:0;font: .9rem/1.5 Arial,sans-serif;color:var(--ke-muted)}.ke-cat b{font-size:1.35rem}
.ke-servicegrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.ke-service{min-height:320px;padding:28px;border-radius:22px;background:#fff;border:1px solid var(--ke-line);display:flex;flex-direction:column;text-decoration:none!important;color:var(--ke-ink)!important;transition:.2s}
.ke-service:hover{transform:translateY(-4px);box-shadow:var(--ke-shadow)}
.ke-service>span{color:var(--ke-gold);font-weight:800}.ke-service h3{font-size:1.35rem;margin:30px 0 12px}.ke-service p{font: .98rem/1.65 Arial,sans-serif;color:var(--ke-muted);flex:1}.ke-service b{font-size:.92rem}
.ke-two{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.ke-usps{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ke-usps>div{border:1px solid rgba(255,255,255,.10);border-radius:18px;padding:22px;background:rgba(255,255,255,.035)}
.ke-usps strong,.ke-usps span{display:block}.ke-usps span{margin-top:8px;font: .9rem/1.55 Arial,sans-serif;color:rgba(255,255,255,.65)}
.ke-two--about .ke-quote{background:var(--ke-soft);border-radius:24px;padding:34px}
.ke-quote>span{font-size:4rem;line-height:.6;color:var(--ke-gold)}.ke-quote p{font-size:1.45rem!important;color:var(--ke-ink)!important}.ke-quote strong{font-size:.9rem}
.ke-textlink{text-decoration:none!important;font-weight:800;color:#88602a!important}
.ke-contactband{background:var(--ke-gold)}
.ke-contactgrid{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
.ke-contactgrid>div>span{font-size:.78rem;letter-spacing:.16em;font-weight:800}
.ke-contactbuttons{display:grid;gap:10px;justify-items:start}.ke-contactlink{color:#111!important;text-decoration:none!important;font-weight:800}
.ke-empty-products{padding:35px;border:1px dashed #c9c5bd;border-radius:18px;background:#fff}
.ke-empty-products strong,.ke-empty-products span{display:block}.ke-empty-products span{margin-top:6px;font-family:Arial,sans-serif;color:var(--ke-muted)}
.ke-pagehero{padding:82px 0;background:linear-gradient(135deg,#171b1e,#2a2f33);color:#fff}
.ke-pagehero p{max-width:790px;font:1.15rem/1.7 Arial,sans-serif;color:rgba(255,255,255,.76);margin:0 0 26px}
.ke-pagehero h1{max-width:980px}
.ke-card4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.ke-card4>div,.ke-module{padding:26px;border:1px solid var(--ke-line);border-radius:20px;background:#fff}.ke-card4 p,.ke-module p,.ke-note p{font: .95rem/1.65 Arial,sans-serif;color:var(--ke-muted)}
.ke-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.ke-steps>div{background:#fff;border:1px solid var(--ke-line);border-radius:18px;padding:22px}.ke-steps b{color:var(--ke-gold)}.ke-steps p{font: .9rem/1.55 Arial,sans-serif;color:var(--ke-muted)}
.ke-modulegrid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.ke-module>span{font-size:2rem}.ke-note{background:#fff;border:1px solid var(--ke-line);border-radius:20px;padding:28px}
.ke-prose{max-width:850px}.ke-prose p{font:1.08rem/1.8 Arial,sans-serif;color:#4d555b}
.ke-contactcards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.ke-contactcards>a,.ke-contactcards>div{border:1px solid var(--ke-line);border-radius:20px;padding:26px;background:#fff;color:var(--ke-ink)!important;text-decoration:none!important}.ke-contactcards strong,.ke-contactcards span{display:block}.ke-contactcards span{margin-top:8px;font: .95rem/1.6 Arial,sans-serif;color:var(--ke-muted)}
.ke-access-notice,.ke-pickup-note{padding:16px;margin:16px 0;border:1px solid #d8d8d3;background:#f5f5f2;border-radius:12px}
.woocommerce ul.products li.product{border:1px solid var(--ke-line);border-radius:18px;padding:14px;background:#fff;box-shadow:0 10px 30px rgba(18,23,27,.06);transition:.2s}
.woocommerce ul.products li.product:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(18,23,27,.11)}
.woocommerce ul.products li.product img{border-radius:12px}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{border-radius:999px!important;font-weight:800!important}

@media(max-width:1024px){
 .ke-hero .ke-shell,.ke-two,.ke-contactgrid{grid-template-columns:1fr}
 .ke-quickgrid{grid-template-columns:1fr 1fr}
 .ke-catgrid{grid-template-columns:1fr 1fr}
 .ke-servicegrid,.ke-card4{grid-template-columns:1fr 1fr}
 .ke-steps{grid-template-columns:1fr 1fr}
 .ke-modulegrid{grid-template-columns:1fr 1fr 1fr}
 .ke-contactcards{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
 .ke-shell{width:min(100% - 28px,1180px)}
 .ke-hero,.ke-pagehero{padding:62px 0}
 .ke-section{padding:60px 0}
 .ke-hero .ke-shell{gap:30px}
 .ke-hero-panel{padding:24px}
 .ke-quickgrid,.ke-catgrid,.ke-servicegrid,.ke-usps,.ke-card4,.ke-steps,.ke-modulegrid,.ke-contactcards{grid-template-columns:1fr}
 .ke-quickgrid>div{border-right:0;border-bottom:1px solid var(--ke-line);padding:16px 0}
 .ke-heading--row{display:block}.ke-heading--row .ke-textlink{display:inline-block;margin-top:10px}
 .ke-btn{width:100%}
}


/* ==========================================================
   Knall-Effekt Corporate Design v0.5
   ========================================================== */
:root{
  --ke-night:#090d18;
  --ke-night-2:#111827;
  --ke-magenta:#e31b78;
  --ke-violet:#7c3aed;
  --ke-orange:#ff7a00;
  --ke-yellow:#ffd43b;
  --ke-cyan:#21c7d9;
  --ke-green:#25d366;
  --ke-blue:#2f80ed;
  --ke-surface:#ffffff;
  --ke-surface-soft:#f7f8fb;
  --ke-border:#e7e9ef;
  --ke-copy:#111827;
  --ke-copy-muted:#667085;
}
.ke-brandbar{
  background:linear-gradient(90deg,var(--ke-night),#151b2f);
  color:#fff;
  font-family:Prometo,Arial,sans-serif;
  font-size:12px;
  position:relative;
  z-index:999;
}
.ke-brandbar:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;height:2px;
  background:linear-gradient(90deg,var(--ke-magenta),var(--ke-orange),var(--ke-yellow),var(--ke-cyan),var(--ke-violet));
}
.ke-brandbar__inner{
  width:min(1240px,calc(100% - 32px));
  margin:auto;
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.ke-brandbar__left,.ke-brandbar__right{display:flex;align-items:center;gap:14px}
.ke-brandbar__left>span:last-child{opacity:.68}
.ke-brandbar__dot{
  width:8px;height:8px;border-radius:50%;
  background:var(--ke-magenta);
  box-shadow:0 0 0 4px rgba(227,27,120,.14),0 0 18px rgba(227,27,120,.7);
}
.ke-brandbar a{color:#fff!important;text-decoration:none!important;opacity:.82}
.ke-brandbar a:hover{opacity:1}
.ke-brandbar__pickup{
  padding:5px 10px;border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10)
}
.site-header,.ast-primary-header-bar{box-shadow:0 8px 32px rgba(9,13,24,.06)}
.ast-primary-header-bar{border-bottom:0!important}
.main-header-menu>.menu-item>a{font-weight:800;letter-spacing:-.01em}
.main-header-menu>.menu-item>a:hover{color:var(--ke-magenta)!important}
.ke-hero--real{
  background:
    radial-gradient(circle at 12% 20%,rgba(227,27,120,.22),transparent 25%),
    radial-gradient(circle at 82% 12%,rgba(47,128,237,.18),transparent 25%),
    radial-gradient(circle at 70% 95%,rgba(255,122,0,.16),transparent 25%),
    linear-gradient(135deg,#070b13 0%,#10182b 55%,#090d18 100%)!important;
}
.ke-hero--real:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.30;
  background-image:
    linear-gradient(115deg,transparent 0 47%,rgba(255,255,255,.04) 48%,transparent 49%),
    linear-gradient(25deg,transparent 0 58%,rgba(255,255,255,.03) 59%,transparent 60%);
}
.ke-hero-panel{position:relative;overflow:hidden;border-color:rgba(255,255,255,.14)!important}
.ke-hero-panel:before{
  content:"";position:absolute;width:170px;height:170px;right:-55px;top:-55px;border-radius:50%;
  background:radial-gradient(circle,var(--ke-magenta),transparent 67%);opacity:.30;
}
.ke-hero-panel:after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:4px;
  background:linear-gradient(90deg,var(--ke-magenta),var(--ke-orange),var(--ke-yellow),var(--ke-cyan),var(--ke-violet));
}
.ke-btn--gold{
  background:linear-gradient(135deg,var(--ke-orange),var(--ke-yellow))!important;
  color:#161616!important;
  box-shadow:0 10px 30px rgba(255,122,0,.18);
}
.ke-btn--gold:hover{box-shadow:0 14px 35px rgba(255,122,0,.28)}
.ke-btn--glass:hover{border-color:var(--ke-cyan)!important}
.ke-cat{overflow:hidden;position:relative}
.ke-cat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--ke-magenta)}
.ke-cat:nth-child(2):before{background:var(--ke-yellow)}
.ke-cat:nth-child(3):before{background:var(--ke-cyan)}
.ke-cat:nth-child(4):before{background:var(--ke-violet)}
.ke-cat:nth-child(5):before{background:var(--ke-orange)}
.ke-cat:nth-child(6):before{background:var(--ke-blue)}
.ke-cat:hover .ke-cat-icon{transform:scale(1.12) rotate(-4deg)}
.ke-cat-icon{transition:.2s ease}
.ke-service{position:relative;overflow:hidden}
.ke-service:after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:4px;
  background:linear-gradient(90deg,var(--ke-magenta),var(--ke-orange));
  transform:scaleX(.18);transform-origin:left;transition:.25s ease;
}
.ke-service:nth-child(2):after{background:linear-gradient(90deg,var(--ke-cyan),var(--ke-blue))}
.ke-service:nth-child(3):after{background:linear-gradient(90deg,var(--ke-yellow),var(--ke-orange))}
.ke-service:nth-child(4):after{background:linear-gradient(90deg,var(--ke-violet),var(--ke-magenta))}
.ke-service:hover:after{transform:scaleX(1)}
.woocommerce ul.products li.product{overflow:hidden;border-color:var(--ke-border)!important}
.woocommerce ul.products li.product:before{
  content:"";display:block;height:3px;margin:-14px -14px 14px;
  background:linear-gradient(90deg,var(--ke-magenta),var(--ke-orange),var(--ke-yellow),var(--ke-cyan));
}
.woocommerce ul.products li.product .price{color:var(--ke-night-2)!important;font-weight:900!important}

.ke-floating-ui{
  position:fixed;
  right:14px;
  bottom:16px;
  z-index:99999;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:8px;
  pointer-events:none;
}
.ke-whatsapp-float,.ke-withdraw-float{
  display:flex;
  align-items:center;
  gap:8px;
  border-radius:999px;
  text-decoration:none!important;
  box-shadow:0 10px 28px rgba(9,13,24,.20);
  transition:.2s ease;
  font-family:Arial,sans-serif;
  opacity:0;
  transform:translateY(14px);
  animation:keFloatIn .45s ease forwards;
  pointer-events:auto;
}
.ke-whatsapp-float:hover,.ke-withdraw-float:hover{transform:translateY(-2px) scale(1.02)}
.ke-withdraw-float{
  animation-delay:3.6s;
  padding:6px 10px 6px 6px;
  min-height:48px;
  color:var(--ke-copy)!important;
  background:#fff;
  border:1px solid var(--ke-border);
}
.ke-whatsapp-float{
  animation-delay:4.2s;
  padding:6px 10px 6px 6px;
  min-height:48px;
  color:#fff!important;
  background:#128c4a;
  border:1px solid rgba(255,255,255,.15);
}
.ke-whatsapp-float__icon{
  width:36px;
  height:36px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#25d366;
  color:#fff;
}
.ke-withdraw-float__icon{
  width:36px;
  height:36px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  background:var(--ke-magenta);
  font-weight:900;
}
.ke-whatsapp-float__text,.ke-withdraw-float__text{display:grid;line-height:1.02}
.ke-whatsapp-float__text strong,.ke-withdraw-float__text strong{font-size:12px}
.ke-whatsapp-float__text small,.ke-withdraw-float__text small{font-size:9px;opacity:.78;margin-top:2px}
@keyframes keFloatIn{
  from{opacity:0;transform:translateY(14px)}
  to{opacity:1;transform:translateY(0)}
}
.site-footer:before{
  content:"";display:block;height:4px;
  background:linear-gradient(90deg,var(--ke-magenta),var(--ke-orange),var(--ke-yellow),var(--ke-cyan),var(--ke-violet));
}
@media(max-width:780px){
  .ke-brandbar__left>span:last-child,.ke-brandbar__right>a{display:none}
  .ke-brandbar__inner{min-height:34px}
  .ke-floating-ui{right:10px;bottom:10px;gap:6px}
  .ke-whatsapp-float__text small,.ke-withdraw-float__text small{display:none}
  .ke-whatsapp-float__text strong,.ke-withdraw-float__text strong{font-size:11px}
}
@media(max-width:480px){
  .ke-whatsapp-float__text,.ke-withdraw-float__text{display:none}
  .ke-whatsapp-float,.ke-withdraw-float{padding:6px}
  .ke-whatsapp-float__icon,.ke-withdraw-float__icon{width:40px;height:40px}
}
  .ke-whatsapp-float{padding:7px}
  .ke-withdraw-float{padding:7px}
  .ke-withdraw-float__icon{width:42px;height:42px}
}


/* ==========================================================
   v0.5.3 – Full-width brand pages + professional shop tools
   ========================================================== */
.ke-designed-page .entry-header{display:none!important}
.ke-designed-page .site-content>.ast-container,
.ke-designed-page #primary,
.ke-designed-page .site-main,
.ke-designed-page .entry-content{
  max-width:none!important;
  width:100%!important;
  padding-left:0!important;
  padding-right:0!important;
  margin-left:0!important;
  margin-right:0!important;
}
.ke-designed-page .site-content>.ast-container{display:block!important}
.ke-designed-page .ke-site{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}

/* Global shop tool bar */
.ke-shoptools{
  position:relative;
  z-index:995;
  background:#fff;
  border-bottom:1px solid var(--ke-border,#e7e9ef);
  box-shadow:0 8px 25px rgba(9,13,24,.05);
  font-family:Prometo,Arial,sans-serif;
}
.ke-shoptools__inner{
  width:min(1240px,calc(100% - 32px));
  min-height:74px;
  margin:auto;
  display:grid;
  grid-template-columns:auto minmax(280px,1fr) auto;
  align-items:center;
  gap:24px;
}
.ke-shoptools__brand{
  display:flex;align-items:center;gap:10px;
  color:var(--ke-night,#090d18)!important;
  text-decoration:none!important;
  white-space:nowrap;
}
.ke-shoptools__brandmark{
  width:39px;height:39px;border-radius:12px;
  display:grid;place-items:center;
  color:#fff;font-weight:900;font-size:14px;
  background:
    linear-gradient(135deg,var(--ke-magenta,#e31b78),var(--ke-orange,#ff7a00));
  box-shadow:0 8px 18px rgba(227,27,120,.18);
}
.ke-shoptools__brand>span:last-child,
.ke-shoptools__account>span:last-child,
.ke-shoptools__carttext{display:grid;line-height:1.05}
.ke-shoptools__brand strong{font-size:15px}
.ke-shoptools__brand small,
.ke-shoptools__account small,
.ke-shoptools__carttext small{
  margin-top:4px;
  font:10px/1.1 Arial,sans-serif;
  color:var(--ke-copy-muted,#667085);
}
.ke-shoptools__search{
  height:46px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  overflow:hidden;
  border-radius:999px;
  border:1px solid #dfe3ea;
  background:#f7f8fb;
  transition:.2s ease;
}
.ke-shoptools__search:focus-within{
  border-color:var(--ke-magenta,#e31b78);
  background:#fff;
  box-shadow:0 0 0 4px rgba(227,27,120,.08);
}
.ke-shoptools__searchicon{
  padding-left:16px;
  color:#697386;
  font-size:20px;
}
.ke-shoptools__search input[type=search]{
  min-width:0;
  height:44px;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding:0 12px!important;
  font:14px Arial,sans-serif;
}
.ke-shoptools__search button{
  height:38px;margin-right:4px;padding:0 17px;
  border:0;border-radius:999px;
  background:var(--ke-night,#090d18);
  color:#fff;font-weight:800;font-size:12px;
  cursor:pointer;
}
.ke-shoptools__actions{
  display:flex;align-items:center;gap:10px;
}
.ke-shoptools__account,
.ke-shoptools__cart{
  min-height:46px;
  display:flex;align-items:center;gap:8px;
  padding:5px 10px;
  border-radius:14px;
  text-decoration:none!important;
  color:var(--ke-night,#090d18)!important;
  transition:.2s ease;
}
.ke-shoptools__account:hover,
.ke-shoptools__cart:hover{background:#f5f6f8}
.ke-shoptools__account>span:first-child{font-size:19px}
.ke-shoptools__account strong,
.ke-shoptools__cart strong{font-size:12px}
.ke-shoptools__cart{position:relative}
.ke-shoptools__carticon{font-size:19px}
.ke-shoptools__count{
  min-width:21px;height:21px;border-radius:999px;
  display:grid;place-items:center;
  padding:0 5px;
  background:var(--ke-magenta,#e31b78);
  color:#fff;
  font:700 10px Arial,sans-serif;
}
.ke-shoptools__mobile-search{display:none}

/* Give the opening hero more presence now that it is truly full-width */
.ke-designed-page .ke-pagehero,
.ke-designed-page .ke-hero{
  border-radius:0!important;
}
.ke-designed-page .ke-pagehero>.ke-shell,
.ke-designed-page .ke-hero>.ke-shell{
  padding-top:10px;
  padding-bottom:10px;
}

/* Small spark details for brand identity without stock imagery */
.ke-hero--real .ke-shell:before,
.ke-pagehero .ke-shell:before{
  content:"✦";
  position:absolute;
  right:4%;
  top:12%;
  color:var(--ke-yellow,#ffd43b);
  font-size:23px;
  opacity:.78;
  text-shadow:
    55px 30px 0 var(--ke-cyan,#21c7d9),
    -35px 65px 0 var(--ke-magenta,#e31b78),
    80px 110px 0 var(--ke-orange,#ff7a00);
  pointer-events:none;
}

@media(max-width:1100px){
  .ke-shoptools__inner{grid-template-columns:auto 1fr auto;gap:14px}
  .ke-shoptools__brand>span:last-child{display:none}
  .ke-shoptools__account>span:last-child{display:none}
  .ke-shoptools__carttext{display:none}
}
@media(max-width:760px){
  .ke-shoptools__inner{
    min-height:62px;
    grid-template-columns:auto 1fr auto;
    gap:10px;
  }
  .ke-shoptools__search{display:none}
  .ke-shoptools__actions{justify-self:end}
  .ke-shoptools__mobile-search{
    display:flex;align-items:center;justify-content:center;
    grid-column:2;
    min-height:38px;
    padding:0 14px;
    border-radius:999px;
    background:var(--ke-night,#090d18);
    color:#fff!important;
    font-size:12px;font-weight:800;
    text-decoration:none!important;
  }
  .ke-shoptools__account{display:none}
}


/* ==========================================================
   v0.5.4 Startseite Feinschliff
   ========================================================== */

.ke-home-v2 .ke-heading--split{
  max-width:none;
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
  gap:44px;
  align-items:end;
  margin-bottom:38px;
}
.ke-home-v2 .ke-heading--split>p{
  margin:0 0 8px;
  font:1rem/1.7 Arial,sans-serif;
  color:var(--ke-copy-muted,#667085);
}

/* Hero */
.ke-hero--wow{
  position:relative;
  overflow:hidden;
  padding:92px 0 82px;
  color:#fff;
  background:
    radial-gradient(circle at 8% 20%,rgba(227,27,120,.28),transparent 24%),
    radial-gradient(circle at 78% 12%,rgba(33,199,217,.18),transparent 25%),
    radial-gradient(circle at 82% 88%,rgba(255,122,0,.22),transparent 28%),
    linear-gradient(135deg,#060913 0%,#0d1324 50%,#090d18 100%);
}
.ke-hero--wow:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(120deg,transparent 0 42%,rgba(255,255,255,.025) 43%,transparent 44%),
    linear-gradient(35deg,transparent 0 58%,rgba(255,255,255,.02) 59%,transparent 60%);
  pointer-events:none;
}
.ke-hero-wow-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);
  gap:70px;
  align-items:center;
  position:relative;
  z-index:3;
}
.ke-hero--wow h1{
  font-size:clamp(4.3rem,7vw,7rem);
  line-height:.82;
  letter-spacing:-.055em;
  margin:18px 0 28px;
}
.ke-hero--wow .ke-hero-copy>p{
  max-width:740px;
  margin:0;
  font:1.13rem/1.72 Arial,sans-serif;
  color:rgba(255,255,255,.78);
}
.ke-hero-mini{
  display:flex;
  flex-wrap:wrap;
  gap:13px 22px;
  margin-top:34px;
  font:12px/1.3 Arial,sans-serif;
  color:rgba(255,255,255,.68);
}
.ke-hero-mini span{display:flex;align-items:center;gap:6px}
.ke-hero-mini b{color:#fff;font-size:12px}

.ke-hero-showcase{
  position:relative;
  min-height:480px;
  display:grid;
  place-items:center;
}
.ke-hero-core{
  position:relative;
  z-index:5;
  width:176px;height:176px;
  border-radius:48px;
  display:grid;
  place-items:center;
  align-content:center;
  background:
    linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.035));
  border:1px solid rgba(255,255,255,.18);
  box-shadow:
    0 30px 90px rgba(0,0,0,.35),
    inset 0 1px 0 rgba(255,255,255,.18);
  backdrop-filter:blur(16px);
}
.ke-hero-core:before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:50px;
  z-index:-1;
  background:linear-gradient(135deg,var(--ke-magenta),var(--ke-orange),var(--ke-cyan),var(--ke-violet));
  opacity:.46;
  filter:blur(14px);
}
.ke-hero-core span{
  font-size:62px;
  font-weight:900;
  line-height:1;
  background:linear-gradient(135deg,#fff,var(--ke-yellow),#fff);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.ke-hero-core small{
  margin-top:9px;
  font-size:9px;
  letter-spacing:.18em;
  color:rgba(255,255,255,.66);
}
.ke-hero-orbit{
  position:absolute;
  border:1px solid rgba(255,255,255,.12);
  border-radius:50%;
}
.ke-hero-orbit--one{width:360px;height:360px}
.ke-hero-orbit--two{width:470px;height:470px;border-style:dashed;opacity:.5}
.ke-hero-badge{
  position:absolute;
  z-index:6;
  min-width:170px;
  padding:15px 17px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(8,12,22,.72);
  box-shadow:0 18px 50px rgba(0,0,0,.23);
  backdrop-filter:blur(14px);
}
.ke-hero-badge small{
  display:block;
  margin-bottom:5px;
  font-size:9px;
  letter-spacing:.18em;
  color:var(--ke-yellow);
}
.ke-hero-badge strong{display:block;font-size:17px}
.ke-hero-badge span{
  display:block;
  margin-top:6px;
  font:10px/1.35 Arial,sans-serif;
  color:rgba(255,255,255,.60)
}
.ke-hero-badge--shop{left:0;top:80px}
.ke-hero-badge--event{right:-5px;top:150px}
.ke-hero-badge--sfx{left:42px;bottom:64px}
.ke-hero-badge--shop{border-left:3px solid var(--ke-orange)}
.ke-hero-badge--event{border-left:3px solid var(--ke-magenta)}
.ke-hero-badge--sfx{border-left:3px solid var(--ke-cyan)}

.ke-hero-sparks span{
  position:absolute;
  width:5px;height:5px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 14px #fff;
  opacity:.55;
  animation:keTwinkle 3.4s ease-in-out infinite;
}
.ke-hero-sparks span:nth-child(1){left:7%;top:20%}
.ke-hero-sparks span:nth-child(2){left:42%;top:14%;animation-delay:.6s;background:var(--ke-yellow)}
.ke-hero-sparks span:nth-child(3){right:8%;top:18%;animation-delay:1.1s;background:var(--ke-cyan)}
.ke-hero-sparks span:nth-child(4){right:30%;bottom:18%;animation-delay:1.8s;background:var(--ke-magenta)}
.ke-hero-sparks span:nth-child(5){left:20%;bottom:12%;animation-delay:2.3s;background:var(--ke-orange)}
@keyframes keTwinkle{
  0%,100%{transform:scale(.7);opacity:.25}
  50%{transform:scale(1.5);opacity:.9}
}

/* ribbon */
.ke-home-ribbon{
  position:relative;
  z-index:4;
  background:#fff;
  border-bottom:1px solid var(--ke-border);
  box-shadow:0 14px 35px rgba(9,13,24,.04);
}
.ke-ribbon-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.ke-ribbon-grid>div{
  min-height:94px;
  padding:19px 24px;
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
  column-gap:12px;
  align-content:center;
  border-right:1px solid var(--ke-border);
}
.ke-ribbon-grid>div:last-child{border-right:0}
.ke-ribbon-grid>div>span{
  grid-row:1/3;
  align-self:center;
  font-size:11px;
  font-weight:900;
  color:var(--ke-magenta);
}
.ke-ribbon-grid strong{font-size:15px}
.ke-ribbon-grid small{
  margin-top:4px;
  font:11px/1.3 Arial,sans-serif;
  color:var(--ke-copy-muted);
}

/* shop entry */
.ke-shop-entry-section{background:#fff}
.ke-catgrid--wow{gap:18px}
.ke-cat--wow{
  min-height:128px;
  padding:24px;
  border-radius:22px;
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(135deg,rgba(227,27,120,.18),rgba(33,199,217,.12)) border-box;
  border:1px solid transparent;
}
.ke-cat--wow .ke-cat-icon{
  width:46px;height:46px;
  border-radius:15px;
  display:grid;
  place-items:center;
  background:#f7f8fb;
}
.ke-cat--wow h3{font-size:1.12rem}
.ke-cat--wow b{
  width:34px;height:34px;
  border-radius:50%;
  display:grid;place-items:center;
  background:#f3f4f7;
  transition:.2s ease;
}
.ke-cat--wow:hover b{background:var(--ke-night);color:#fff}

/* dark product stage */
.ke-section--shopstage{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 86% 14%,rgba(33,199,217,.12),transparent 20%),
    radial-gradient(circle at 16% 90%,rgba(227,27,120,.12),transparent 22%),
    #0b101a;
  color:#fff;
}
.ke-section--shopstage .ke-heading h2{color:#fff}
.ke-section--shopstage .ke-heading p{color:rgba(255,255,255,.60)}
.ke-textlink--light{color:#fff!important}
.ke-products--stage .woocommerce ul.products li.product{
  border-color:rgba(255,255,255,.10)!important;
  box-shadow:0 16px 40px rgba(0,0,0,.18);
}

/* editorial services */
.ke-services-editorial{background:#f7f8fb}
.ke-servicegrid--editorial{gap:20px}
.ke-service--editorial{
  min-height:365px;
  position:relative;
  overflow:hidden;
  padding:28px;
  color:#fff!important;
  border:0;
  box-shadow:0 18px 45px rgba(9,13,24,.10);
}
.ke-service--editorial:before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.92;
  transition:.25s ease;
}
.ke-service--event:before{background:linear-gradient(145deg,#7a1248,#e31b78)}
.ke-service--fx:before{background:linear-gradient(145deg,#0e5572,#1695bd)}
.ke-service--modules:before{background:linear-gradient(145deg,#9a5410,#ff8a15)}
.ke-service--balloons:before{background:linear-gradient(145deg,#4f2b8f,#8b5cf6)}
.ke-service--editorial>*{position:relative;z-index:2}
.ke-service--editorial:hover:before{transform:scale(1.04)}
.ke-service--editorial .ke-service-no{
  font-size:11px;
  letter-spacing:.15em;
  color:rgba(255,255,255,.55);
}
.ke-service-icon{font-size:2.4rem;margin-top:52px}
.ke-service--editorial h3{
  margin:18px 0 12px;
  font-size:1.55rem;
  color:#fff;
}
.ke-service--editorial p{
  color:rgba(255,255,255,.78);
  font-size:.98rem;
}
.ke-service--editorial b{color:#fff}

/* proof */
.ke-proof-section{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(130deg,#090d18 0%,#101829 100%);
  color:#fff;
}
.ke-proof-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);
  gap:70px;
  align-items:center;
}
.ke-proof-main h2{
  max-width:720px;
  margin:12px 0 20px;
  font-size:clamp(2.4rem,4.7vw,4.4rem);
  line-height:1;
  letter-spacing:-.04em;
  color:#fff;
}
.ke-proof-main p{
  max-width:700px;
  font:1.04rem/1.75 Arial,sans-serif;
  color:rgba(255,255,255,.68);
}
.ke-proof-cards{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.ke-proof-cards>div{
  min-height:150px;
  padding:23px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.045);
  backdrop-filter:blur(8px);
}
.ke-proof-cards strong{display:block;font-size:1.05rem}
.ke-proof-cards span{
  display:block;
  margin-top:9px;
  font:12px/1.55 Arial,sans-serif;
  color:rgba(255,255,255,.58);
}

/* about strip */
.ke-about-strip{background:#fff}
.ke-about-strip-grid{
  display:grid;
  grid-template-columns:160px 1fr .85fr;
  gap:52px;
  align-items:center;
}
.ke-about-number{
  width:150px;height:150px;
  border-radius:38px;
  display:grid;place-items:center;
  font-size:52px;
  font-weight:900;
  color:#fff;
  background:linear-gradient(135deg,var(--ke-magenta),var(--ke-orange));
  box-shadow:0 24px 55px rgba(227,27,120,.18);
}
.ke-about-strip-grid>div:nth-child(2)>span{
  font-size:.78rem;
  letter-spacing:.16em;
  font-weight:800;
  color:var(--ke-magenta)
}
.ke-about-strip-grid h2{
  margin:9px 0 14px;
  font-size:clamp(2rem,3.8vw,3.4rem);
  line-height:1.05;
}
.ke-about-strip-grid p{
  font:1rem/1.72 Arial,sans-serif;
  color:var(--ke-copy-muted);
}
.ke-about-quote{
  padding:28px;
  border-radius:22px;
  background:#f7f8fb;
  border-left:4px solid var(--ke-magenta);
}
.ke-about-quote p{
  margin:0 0 14px;
  font-size:1.2rem;
  line-height:1.45;
  color:var(--ke-copy)!important;
}
.ke-about-quote strong{font-size:12px}

/* final contact */
.ke-contactband--wow{
  background:
    radial-gradient(circle at 80% 20%,rgba(255,255,255,.18),transparent 20%),
    linear-gradient(120deg,#ffc83d,#ff8a15 56%,#e31b78 130%);
}
.ke-contactband--wow .ke-contactgrid p{
  max-width:720px;
  margin:10px 0 0;
  font:1rem/1.6 Arial,sans-serif;
  color:rgba(17,20,23,.72);
}

@media(max-width:1024px){
  .ke-hero-wow-grid,
  .ke-proof-grid,
  .ke-about-strip-grid{
    grid-template-columns:1fr;
  }
  .ke-hero-showcase{min-height:420px}
  .ke-ribbon-grid{grid-template-columns:1fr 1fr}
  .ke-home-v2 .ke-heading--split{grid-template-columns:1fr;gap:10px}
  .ke-about-number{width:110px;height:110px;border-radius:28px;font-size:40px}
}
@media(max-width:640px){
  .ke-hero--wow{padding:68px 0 54px}
  .ke-hero--wow h1{font-size:clamp(3.3rem,17vw,5rem)}
  .ke-hero-wow-grid{gap:35px}
  .ke-hero-showcase{min-height:340px}
  .ke-hero-core{width:135px;height:135px;border-radius:35px}
  .ke-hero-core span{font-size:48px}
  .ke-hero-orbit--one{width:260px;height:260px}
  .ke-hero-orbit--two{width:330px;height:330px}
  .ke-hero-badge{min-width:140px;padding:12px}
  .ke-hero-badge--shop{left:0;top:52px}
  .ke-hero-badge--event{right:0;top:110px}
  .ke-hero-badge--sfx{left:14px;bottom:45px}
  .ke-ribbon-grid{grid-template-columns:1fr}
  .ke-ribbon-grid>div{border-right:0;border-bottom:1px solid var(--ke-border)}
  .ke-proof-cards{grid-template-columns:1fr}
  .ke-about-strip-grid{gap:28px}
}


/* ==========================================================
   v0.5.5 Eventfeuerwerke
   ========================================================== */
.ke-eventfireworks-page .ke-pagehero--fire{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 18%,rgba(227,27,120,.22),transparent 26%),
    radial-gradient(circle at 78% 18%,rgba(33,199,217,.13),transparent 24%),
    radial-gradient(circle at 72% 92%,rgba(255,122,0,.16),transparent 24%),
    linear-gradient(135deg,#070b13 0%,#121828 58%,#090d18 100%);
}
.ke-eventfireworks-page .ke-pagehero--fire:after{
  content:"";
  position:absolute;
  width:420px;height:420px;
  right:-120px;bottom:-180px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:50%;
  box-shadow:
    -90px -35px 0 -88px var(--ke-yellow),
    -180px -75px 0 -88px var(--ke-magenta),
    -115px -150px 0 -88px var(--ke-cyan);
}
.ke-eventfireworks-page .ke-pagehero--fire .ke-shell{position:relative;z-index:2}
.ke-eventfireworks-page .ke-pagehero--fire h1{max-width:900px}

.ke-event-types{background:#fff}
.ke-event-cardgrid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}
.ke-event-card{
  position:relative;
  overflow:hidden;
  min-height:330px;
  padding:26px;
  border-radius:24px;
  border:1px solid transparent;
  background:#fff;
  box-shadow:0 18px 44px rgba(9,13,24,.08);
  transition:.25s ease;
}
.ke-event-card:before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.095;
  transition:.25s ease;
}
.ke-event-card:hover{
  transform:translateY(-6px);
  box-shadow:0 26px 60px rgba(9,13,24,.14);
}
.ke-event-card:hover:before{opacity:.16}
.ke-event-card--wedding{border-color:rgba(227,27,120,.22)}
.ke-event-card--wedding:before{background:linear-gradient(145deg,var(--ke-magenta),#ff86b9)}
.ke-event-card--city{border-color:rgba(255,122,0,.24)}
.ke-event-card--city:before{background:linear-gradient(145deg,var(--ke-orange),var(--ke-yellow))}
.ke-event-card--business{border-color:rgba(47,128,237,.22)}
.ke-event-card--business:before{background:linear-gradient(145deg,var(--ke-blue),var(--ke-cyan))}
.ke-event-card--sfx{border-color:rgba(124,58,237,.22)}
.ke-event-card--sfx:before{background:linear-gradient(145deg,var(--ke-violet),var(--ke-magenta))}
.ke-event-card>*{position:relative;z-index:2}
.ke-event-card__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.ke-event-card__top span{
  width:32px;height:32px;
  border-radius:50%;
  display:grid;place-items:center;
  background:#fff;
  box-shadow:0 6px 18px rgba(9,13,24,.08);
  font-size:10px;
  font-weight:900;
}
.ke-event-card__top b{
  font-size:9px;
  letter-spacing:.16em;
  color:var(--ke-copy-muted);
}
.ke-event-card__icon{
  margin-top:52px;
  font-size:42px;
  line-height:1;
}
.ke-event-card--wedding .ke-event-card__icon{color:var(--ke-magenta)}
.ke-event-card--city .ke-event-card__icon{color:var(--ke-orange)}
.ke-event-card--business .ke-event-card__icon{color:var(--ke-blue)}
.ke-event-card--sfx .ke-event-card__icon{color:var(--ke-violet)}
.ke-event-card h3{
  margin:18px 0 12px;
  font-size:1.45rem;
  line-height:1.1;
}
.ke-event-card p{
  margin:0;
  font: .98rem/1.68 Arial,sans-serif;
  color:#59636b;
}

.ke-event-process .ke-steps>div{
  position:relative;
  overflow:hidden;
}
.ke-event-process .ke-steps>div:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:3px;
  background:linear-gradient(90deg,var(--ke-magenta),var(--ke-orange),var(--ke-cyan));
  opacity:.7;
}

.ke-event-cta{
  background:
    radial-gradient(circle at 90% 15%,rgba(255,255,255,.22),transparent 22%),
    linear-gradient(115deg,var(--ke-yellow),var(--ke-orange) 58%,var(--ke-magenta) 140%);
}
.ke-event-cta__inner{
  display:grid;
  grid-template-columns:1fr auto;
  gap:40px;
  align-items:center;
}
.ke-event-cta__inner>div>span{
  font-size:.78rem;
  letter-spacing:.16em;
  font-weight:900;
}
.ke-event-cta__inner h2{
  margin:8px 0 12px;
  font-size:clamp(2.2rem,4vw,3.6rem);
  line-height:1.02;
}
.ke-event-cta__inner p{
  margin:0;
  max-width:700px;
  font:1rem/1.6 Arial,sans-serif;
  color:rgba(17,20,23,.72)
}

@media(max-width:1024px){
  .ke-event-cardgrid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .ke-event-cardgrid{grid-template-columns:1fr}
  .ke-event-card{min-height:auto}
  .ke-event-card__icon{margin-top:34px}
  .ke-event-cta__inner{grid-template-columns:1fr}
}


/* ==========================================================
   v0.5.6 Floating Actions exakt gleich groß
   ========================================================== */
.ke-floating-ui{
  right:14px!important;
  bottom:14px!important;
  gap:8px!important;
}
.ke-whatsapp-float,
.ke-withdraw-float{
  width:178px!important;
  min-width:178px!important;
  max-width:178px!important;
  height:50px!important;
  min-height:50px!important;
  padding:6px 10px 6px 7px!important;
  gap:9px!important;
  justify-content:flex-start!important;
  border-radius:999px!important;
  box-sizing:border-box!important;
}
.ke-whatsapp-float__icon,
.ke-withdraw-float__icon{
  width:36px!important;
  min-width:36px!important;
  height:36px!important;
  min-height:36px!important;
  flex:0 0 36px!important;
  border-radius:50%!important;
}
.ke-whatsapp-float__text,
.ke-withdraw-float__text{
  min-width:0!important;
  flex:1 1 auto!important;
  display:grid!important;
  line-height:1.03!important;
}
.ke-whatsapp-float__text strong,
.ke-withdraw-float__text strong{
  font-size:12px!important;
  font-weight:700!important;
  white-space:nowrap!important;
}
.ke-whatsapp-float__text small,
.ke-withdraw-float__text small{
  font-size:9px!important;
  margin-top:3px!important;
  white-space:nowrap!important;
}
@media(max-width:480px){
  .ke-whatsapp-float,
  .ke-withdraw-float{
    width:46px!important;
    min-width:46px!important;
    max-width:46px!important;
    height:46px!important;
    min-height:46px!important;
    padding:5px!important;
    justify-content:center!important;
  }
  .ke-whatsapp-float__icon,
  .ke-withdraw-float__icon{
    width:36px!important;
    min-width:36px!important;
    height:36px!important;
    min-height:36px!important;
  }
  .ke-whatsapp-float__text,
  .ke-withdraw-float__text{
    display:none!important;
  }
}


/* ==========================================================
   v0.6.2 SAFE – Leistungsseiten und Footer-Feinschliff
   Nur bestehende Ausgabe wird gestaltet. Keine neuen Hooks.
   ========================================================== */

/* Astra Footer optisch an die Marke ziehen, ohne ihn technisch zu ersetzen */
.site-footer{
  position:relative;
  background:#090d18!important;
  color:#fff!important;
  margin-top:0!important;
}
.site-footer:before{
  content:"";
  display:block;
  height:4px;
  background:linear-gradient(90deg,var(--ke-magenta),var(--ke-orange),var(--ke-yellow),var(--ke-cyan),var(--ke-violet))!important;
}
.site-footer a{color:rgba(255,255,255,.72)!important}
.site-footer a:hover{color:#fff!important}
.site-footer *{border-color:rgba(255,255,255,.10)!important}

/* Gemeinsame Hero-Sprache */
.ke-pagehero--modules,
.ke-pagehero--sfx,
.ke-pagehero--about,
.ke-pagehero--contact{
  position:relative;
  overflow:hidden;
}
.ke-pagehero--modules{
  background:
    radial-gradient(circle at 15% 18%,rgba(255,122,0,.24),transparent 25%),
    radial-gradient(circle at 82% 20%,rgba(124,58,237,.18),transparent 24%),
    linear-gradient(135deg,#090d18,#17182c)!important;
}
.ke-pagehero--sfx{
  background:
    radial-gradient(circle at 82% 12%,rgba(33,199,217,.24),transparent 25%),
    radial-gradient(circle at 12% 80%,rgba(124,58,237,.20),transparent 25%),
    linear-gradient(135deg,#071018,#101728)!important;
}
.ke-pagehero--about{
  background:
    radial-gradient(circle at 10% 20%,rgba(227,27,120,.22),transparent 24%),
    radial-gradient(circle at 90% 75%,rgba(255,122,0,.12),transparent 22%),
    linear-gradient(135deg,#090d18,#1a1421)!important;
}
.ke-pagehero--contact{
  background:
    radial-gradient(circle at 85% 15%,rgba(255,122,0,.20),transparent 23%),
    radial-gradient(circle at 10% 80%,rgba(33,199,217,.14),transparent 22%),
    linear-gradient(135deg,#090d18,#151d2a)!important;
}
.ke-pagehero--modules:after,
.ke-pagehero--sfx:after,
.ke-pagehero--about:after,
.ke-pagehero--contact:after{
  content:"";
  position:absolute;
  width:340px;height:340px;
  right:-145px;bottom:-175px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.08);
}
.ke-pagehero--modules>.ke-shell,
.ke-pagehero--sfx>.ke-shell,
.ke-pagehero--about>.ke-shell,
.ke-pagehero--contact>.ke-shell{position:relative;z-index:2}

/* Eventmodule */
.ke-modules-page .ke-modulegrid{
  gap:18px;
}
.ke-modules-page .ke-module{
  position:relative;
  min-height:300px;
  overflow:hidden;
  border:1px solid var(--ke-border);
  border-radius:22px;
  padding:25px;
  background:#fff;
  box-shadow:0 15px 38px rgba(9,13,24,.07);
  transition:.22s ease;
}
.ke-modules-page .ke-module:nth-child(1){border-top:4px solid var(--ke-magenta)}
.ke-modules-page .ke-module:nth-child(2){border-top:4px solid var(--ke-blue)}
.ke-modules-page .ke-module:nth-child(3){border-top:4px solid var(--ke-orange)}
.ke-modules-page .ke-module:nth-child(4){border-top:4px solid var(--ke-violet)}
.ke-modules-page .ke-module:nth-child(5){border-top:4px solid #25d366}
.ke-modules-page .ke-module:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 52px rgba(9,13,24,.12);
}
.ke-modules-page .ke-module>span{
  display:block;
  margin:18px 0 52px;
  font-size:2.6rem;
}
.ke-modules-page .ke-module h3{font-size:1.35rem}
.ke-modules-page .ke-note{
  border-radius:22px;
  border:1px solid var(--ke-border);
  border-left:4px solid var(--ke-orange);
  box-shadow:0 14px 36px rgba(9,13,24,.06);
}

/* SFX */
.ke-sfx-page .ke-card4>div{
  min-height:280px;
  position:relative;
  overflow:hidden;
  padding:28px;
  border-radius:22px;
  box-shadow:0 15px 38px rgba(9,13,24,.07);
}
.ke-sfx-page .ke-card4>div:nth-child(1){border-top:4px solid var(--ke-orange)}
.ke-sfx-page .ke-card4>div:nth-child(2){border-top:4px solid var(--ke-cyan)}
.ke-sfx-page .ke-card4>div:nth-child(3){border-top:4px solid var(--ke-violet)}
.ke-sfx-page .ke-card4>div:nth-child(4){border-top:4px solid var(--ke-magenta)}
.ke-sfx-page .ke-card4>div:after{
  content:"";
  position:absolute;
  width:100px;height:100px;
  right:-35px;bottom:-35px;
  border-radius:50%;
  background:currentColor;
  opacity:.035;
}

/* Über uns */
.ke-about-page .ke-prose{
  max-width:900px;
  padding:10px 0;
}
.ke-about-page .ke-prose p{
  font-size:1.08rem;
  line-height:1.85;
}
.ke-about-page .ke-section--dark{
  background:
    radial-gradient(circle at 85% 25%,rgba(227,27,120,.14),transparent 22%),
    #090d18!important;
}

/* Kontakt */
.ke-contact-page .ke-contactcards{
  gap:18px;
}
.ke-contact-page .ke-contactcards>a,
.ke-contact-page .ke-contactcards>div{
  position:relative;
  min-height:220px;
  padding:28px;
  overflow:hidden;
  border-radius:22px;
  box-shadow:0 15px 38px rgba(9,13,24,.07);
  transition:.22s ease;
}
.ke-contact-page .ke-contactcards>a:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 52px rgba(9,13,24,.12);
}
.ke-contact-page .ke-contactcards>a:nth-child(1){border-top:4px solid var(--ke-orange)}
.ke-contact-page .ke-contactcards>a:nth-child(2){border-top:4px solid #25d366}
.ke-contact-page .ke-contactcards>a:nth-child(3){border-top:4px solid var(--ke-cyan)}
.ke-contact-page .ke-contactcards>div:nth-child(4){border-top:4px solid var(--ke-magenta)}
.ke-contact-page .ke-contactcards strong{
  margin-top:55px;
  font-size:1.15rem;
}
.ke-contact-page .ke-contactcards span{
  margin-top:10px;
}

/* Responsive */
@media(max-width:1024px){
  .ke-modules-page .ke-modulegrid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .ke-modules-page .ke-modulegrid{grid-template-columns:1fr}
  .ke-modules-page .ke-module,
  .ke-sfx-page .ke-card4>div,
  .ke-contact-page .ke-contactcards>a,
  .ke-contact-page .ke-contactcards>div{min-height:auto}
}


/* ==========================================================
   v0.6.3 SAFE SHOP – WooCommerce Feinschliff ohne neue Hooks
   ========================================================== */

/* Shop und Kategorien */
.woocommerce-shop .site-main,
.tax-product_cat .site-main{
  padding-top:30px;
  padding-bottom:70px;
}
.woocommerce-shop .woocommerce-products-header,
.tax-product_cat .woocommerce-products-header{
  margin-bottom:28px;
  padding:32px 34px;
  border-radius:24px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(33,199,217,.16),transparent 22%),
    radial-gradient(circle at 10% 88%,rgba(227,27,120,.14),transparent 24%),
    linear-gradient(135deg,#090d18,#151d31);
  overflow:hidden;
}
.woocommerce-shop .woocommerce-products-header__title,
.tax-product_cat .woocommerce-products-header__title{
  color:#fff!important;
  margin:0!important;
  font-size:clamp(2rem,4vw,3.4rem)!important;
  line-height:1!important;
}
.woocommerce-shop .term-description,
.tax-product_cat .term-description{
  margin-top:12px;
  max-width:780px;
  color:rgba(255,255,255,.68)!important;
  font:14px/1.65 Arial,sans-serif;
}
.woocommerce-shop .term-description p,
.tax-product_cat .term-description p{color:inherit!important}

/* Toolbar */
.woocommerce .woocommerce-result-count{
  margin:10px 0 22px!important;
  font:12px Arial,sans-serif;
  color:#667085;
}
.woocommerce .woocommerce-ordering{
  margin:0 0 22px!important;
}
.woocommerce .woocommerce-ordering select{
  min-height:42px;
  border:1px solid #dfe3ea!important;
  border-radius:999px!important;
  background:#fff!important;
  padding:0 40px 0 15px!important;
  font:12px Arial,sans-serif!important;
  box-shadow:none!important;
}

/* Produktgrid */
.woocommerce ul.products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:20px!important;
  margin-top:10px!important;
}
.woocommerce ul.products:before,
.woocommerce ul.products:after{display:none!important}
.woocommerce ul.products li.product{
  width:auto!important;
  margin:0!important;
  float:none!important;
  display:flex!important;
  flex-direction:column!important;
  position:relative;
  overflow:hidden;
  padding:14px!important;
  border:1px solid #e7e9ef!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(9,13,24,.055)!important;
  transition:transform .2s ease, box-shadow .2s ease!important;
}
.woocommerce ul.products li.product:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 48px rgba(9,13,24,.11)!important;
}
.woocommerce ul.products li.product:before{
  content:"";
  display:block;
  height:3px;
  margin:-14px -14px 14px;
  background:linear-gradient(90deg,var(--ke-magenta),var(--ke-orange),var(--ke-yellow),var(--ke-cyan),var(--ke-violet));
}
.woocommerce ul.products li.product a img{
  margin:0 0 14px!important;
  border-radius:14px!important;
  aspect-ratio:1/1;
  object-fit:contain;
  background:#f7f8fb;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  min-height:45px;
  margin:4px 0 8px!important;
  padding:0!important;
  color:#111827!important;
  font-size:1rem!important;
  line-height:1.3!important;
}
.woocommerce ul.products li.product .price{
  margin-top:auto!important;
  margin-bottom:8px!important;
  color:#111827!important;
  font-size:1.07rem!important;
  font-weight:900!important;
}
.woocommerce ul.products li.product .price del{
  opacity:.45!important;
  font-weight:500!important;
}
.woocommerce ul.products li.product .price ins{
  text-decoration:none!important;
}
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart{
  width:100%;
  min-height:44px;
  margin-top:9px!important;
  display:flex!important;
  align-items:center;
  justify-content:center;
  border-radius:999px!important;
  background:#090d18!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:800!important;
  text-align:center;
  transition:.2s ease!important;
}
.woocommerce ul.products li.product .button:hover{
  background:var(--ke-magenta)!important;
}
.woocommerce ul.products li.product .added_to_cart{
  background:#f4f5f7!important;
  color:#111827!important;
}
.woocommerce span.onsale{
  top:10px!important;
  left:10px!important;
  right:auto!important;
  min-width:auto!important;
  min-height:auto!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,var(--ke-magenta),var(--ke-orange))!important;
  color:#fff!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:900!important;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination{
  margin-top:38px!important;
}
.woocommerce nav.woocommerce-pagination ul{
  border:0!important;
  display:flex!important;
  justify-content:center;
  gap:8px;
}
.woocommerce nav.woocommerce-pagination ul li{
  border:0!important;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  min-width:38px;
  height:38px;
  display:grid!important;
  place-items:center;
  border-radius:50%!important;
  background:#f4f5f7!important;
  color:#111827!important;
  font-size:12px!important;
  font-weight:800!important;
}
.woocommerce nav.woocommerce-pagination ul li span.current{
  background:#090d18!important;
  color:#fff!important;
}

/* Einzelprodukt */
.single-product .site-main{
  padding-top:36px;
  padding-bottom:70px;
}
.single-product div.product{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.88fr);
  gap:48px;
  align-items:start;
}
.single-product div.product .woocommerce-product-gallery,
.single-product div.product .summary{
  float:none!important;
  width:auto!important;
}
.single-product div.product .woocommerce-product-gallery{
  padding:18px;
  border:1px solid #e7e9ef;
  border-radius:24px;
  background:#fff;
  box-shadow:0 12px 35px rgba(9,13,24,.055);
}
.single-product div.product .woocommerce-product-gallery img{
  border-radius:16px;
}
.single-product div.product .summary{
  padding:30px;
  border:1px solid #e7e9ef;
  border-radius:24px;
  background:#fff;
  box-shadow:0 16px 45px rgba(9,13,24,.075);
}
.single-product .product_title{
  margin-bottom:14px!important;
  color:#111827!important;
  font-size:clamp(2rem,3.5vw,3.1rem)!important;
  line-height:1!important;
  letter-spacing:-.03em;
}
.single-product .summary .price{
  margin:14px 0 20px!important;
  color:#111827!important;
  font-size:1.55rem!important;
  font-weight:900!important;
}
.single-product .woocommerce-product-details__short-description{
  color:#59636b;
  font:15px/1.7 Arial,sans-serif;
}
.single-product form.cart{
  display:flex;
  gap:10px;
  align-items:center;
  margin:24px 0!important;
}
.single-product form.cart .quantity .qty{
  min-height:50px;
  border:1px solid #dfe3ea!important;
  border-radius:14px!important;
}
.single-product form.cart .single_add_to_cart_button{
  flex:1;
  min-height:50px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,var(--ke-orange),var(--ke-yellow))!important;
  color:#111!important;
  font-weight:900!important;
}
.single-product form.cart .single_add_to_cart_button:hover{
  filter:brightness(.97);
}
.single-product .product_meta{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid #eceef2;
  font:11px/1.7 Arial,sans-serif;
  color:#7a828a;
}
.single-product .woocommerce-tabs{
  margin-top:50px!important;
}
.single-product .woocommerce-tabs ul.tabs{
  border-bottom:1px solid #e7e9ef!important;
}
.single-product .woocommerce-tabs ul.tabs li{
  border:0!important;
  background:transparent!important;
}
.single-product .woocommerce-tabs ul.tabs li.active a{
  color:#111827!important;
}
.single-product .woocommerce-tabs .panel{
  font:15px/1.75 Arial,sans-serif;
  color:#4f5962;
}

/* Warenkorb */
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review{
  padding:24px;
  border:1px solid #e7e9ef;
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 38px rgba(9,13,24,.06);
}
.woocommerce-cart table.shop_table,
.woocommerce-checkout table.shop_table{
  border-radius:18px!important;
  overflow:hidden;
}
.woocommerce-cart .checkout-button,
.woocommerce-checkout #place_order{
  min-height:50px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,var(--ke-orange),var(--ke-yellow))!important;
  color:#111!important;
  font-weight:900!important;
}

/* Mobil */
@media(max-width:1100px){
  .woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:800px){
  .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .single-product div.product{grid-template-columns:1fr}
}
@media(max-width:520px){
  .woocommerce ul.products{grid-template-columns:1fr!important}
  .single-product div.product .summary,
  .single-product div.product .woocommerce-product-gallery{padding:18px}
  .single-product form.cart{align-items:stretch;flex-wrap:wrap}
  .single-product form.cart .single_add_to_cart_button{width:100%}
}


/* ==========================================================
   v0.6.4 FINAL FLOAT FIX
   WhatsApp und Widerruf exakt gleich groß und ausgerichtet.
   ========================================================== */
.ke-floating-ui{
  right:14px!important;
  bottom:14px!important;
  gap:8px!important;
}
.ke-whatsapp-float,
.ke-withdraw-float{
  box-sizing:border-box!important;
  width:176px!important;
  min-width:176px!important;
  max-width:176px!important;
  height:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  padding:6px 10px 6px 7px!important;
  gap:9px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  border-radius:999px!important;
  overflow:hidden!important;
}
.ke-whatsapp-float__icon,
.ke-withdraw-float__icon{
  box-sizing:border-box!important;
  width:34px!important;
  min-width:34px!important;
  max-width:34px!important;
  height:34px!important;
  min-height:34px!important;
  max-height:34px!important;
  flex:0 0 34px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  margin:0!important;
}
.ke-whatsapp-float__icon svg{
  width:22px!important;
  height:22px!important;
}
.ke-whatsapp-float__text,
.ke-withdraw-float__text{
  min-width:0!important;
  flex:1 1 auto!important;
  display:grid!important;
  align-content:center!important;
  line-height:1.02!important;
  margin:0!important;
}
.ke-whatsapp-float__text strong,
.ke-withdraw-float__text strong{
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.05!important;
  margin:0!important;
  white-space:nowrap!important;
}
.ke-whatsapp-float__text small,
.ke-withdraw-float__text small{
  font-size:9px!important;
  line-height:1.05!important;
  margin:3px 0 0!important;
  white-space:nowrap!important;
}
.ke-withdraw-float{
  animation-delay:3.8s!important;
}
.ke-whatsapp-float{
  animation-delay:4.2s!important;
}

@media(max-width:480px){
  .ke-whatsapp-float,
  .ke-withdraw-float{
    width:46px!important;
    min-width:46px!important;
    max-width:46px!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
    padding:6px!important;
    justify-content:center!important;
  }
  .ke-whatsapp-float__icon,
  .ke-withdraw-float__icon{
    width:34px!important;
    min-width:34px!important;
    max-width:34px!important;
    height:34px!important;
    min-height:34px!important;
    max-height:34px!important;
    flex:0 0 34px!important;
  }
  .ke-whatsapp-float__text,
  .ke-withdraw-float__text{
    display:none!important;
  }
}


/* ==========================================================
   v0.6.5 Floating UI neu gedacht
   WhatsApp klein floating, Widerruf am Seitenende.
   ========================================================== */

/* Widerruf-Floating vollständig abschalten */
.ke-withdraw-float{display:none!important}

/* WhatsApp bewusst klein und unaufdringlich */
.ke-floating-ui{
  right:14px!important;
  bottom:14px!important;
  gap:0!important;
}
.ke-whatsapp-float{
  width:52px!important;
  min-width:52px!important;
  max-width:52px!important;
  height:52px!important;
  min-height:52px!important;
  max-height:52px!important;
  padding:6px!important;
  border-radius:50%!important;
  justify-content:center!important;
  box-shadow:0 10px 28px rgba(9,13,24,.22)!important;
}
.ke-whatsapp-float__icon{
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  flex:0 0 40px!important;
  border-radius:50%!important;
}
.ke-whatsapp-float__icon svg{
  width:23px!important;
  height:23px!important;
}
.ke-whatsapp-float__text{display:none!important}

/* Widerruf am Ende jeder Seite */
.ke-withdraw-end{
  background:#f7f8fb;
  border-top:1px solid #e7e9ef;
  border-bottom:1px solid #e7e9ef;
  font-family:Arial,sans-serif;
}
.ke-withdraw-end__inner{
  width:min(1240px,calc(100% - 32px));
  min-height:62px;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  text-align:center;
}
.ke-withdraw-end__inner span{
  color:#667085;
  font-size:12px;
}
.ke-withdraw-end__inner a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:#fff;
  border:1px solid #dfe3ea;
  color:#111827!important;
  text-decoration:none!important;
  font-size:11px;
  font-weight:800;
  transition:.2s ease;
}
.ke-withdraw-end__inner a:hover{
  border-color:var(--ke-magenta);
  color:var(--ke-magenta)!important;
  transform:translateY(-1px);
}

@media(max-width:520px){
  .ke-whatsapp-float{
    width:48px!important;
    min-width:48px!important;
    max-width:48px!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
  }
  .ke-whatsapp-float__icon{
    width:36px!important;
    min-width:36px!important;
    max-width:36px!important;
    height:36px!important;
    min-height:36px!important;
    max-height:36px!important;
    flex:0 0 36px!important;
  }
  .ke-withdraw-end__inner{
    min-height:auto;
    padding:12px 0;
    display:grid;
    gap:8px;
  }
}


/* ==========================================================
   v0.6.6 WhatsApp kompakt, Widerruf sicher am Seitenende
   ========================================================== */

/* WhatsApp wieder als kleine Pill mit Text */
.ke-floating-ui{
  right:14px!important;
  bottom:14px!important;
}
.ke-whatsapp-float{
  width:142px!important;
  min-width:142px!important;
  max-width:142px!important;
  height:44px!important;
  min-height:44px!important;
  max-height:44px!important;
  padding:5px 11px 5px 6px!important;
  border-radius:999px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  background:#128c4a!important;
  box-shadow:0 9px 24px rgba(9,13,24,.20)!important;
}
.ke-whatsapp-float__icon{
  width:32px!important;
  min-width:32px!important;
  max-width:32px!important;
  height:32px!important;
  min-height:32px!important;
  max-height:32px!important;
  flex:0 0 32px!important;
  border-radius:50%!important;
}
.ke-whatsapp-float__icon svg{
  width:19px!important;
  height:19px!important;
}
.ke-whatsapp-float__text{
  min-width:0!important;
  display:grid!important;
  line-height:1!important;
}
.ke-whatsapp-float__text strong{
  font-size:11px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.ke-whatsapp-float__text small{
  display:block!important;
  margin-top:3px!important;
  font-size:8px!important;
  line-height:1!important;
  white-space:nowrap!important;
  opacity:.74!important;
}

/* Widerruf wird als schlanke Leiste direkt vor den Footer verschoben */
.ke-withdraw-end{
  display:block!important;
  position:relative!important;
  z-index:20!important;
  width:100%!important;
  background:#f7f8fb!important;
  border-top:1px solid #e7e9ef!important;
  border-bottom:1px solid #e7e9ef!important;
  font-family:Arial,sans-serif!important;
}
.ke-withdraw-end__inner{
  width:min(1240px,calc(100% - 32px))!important;
  min-height:54px!important;
  margin:auto!important;
  padding:8px 0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
}
.ke-withdraw-end__inner span{
  display:inline!important;
  margin:0!important;
  color:#667085!important;
  font-size:11px!important;
}
.ke-withdraw-end__inner a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:32px!important;
  padding:0 13px!important;
  border-radius:999px!important;
  border:1px solid #dfe3ea!important;
  background:#fff!important;
  color:#111827!important;
  text-decoration:none!important;
  font-size:10px!important;
  font-weight:800!important;
  box-shadow:none!important;
}
.ke-withdraw-end__inner a:hover{
  border-color:var(--ke-magenta)!important;
  color:var(--ke-magenta)!important;
}

/* Die alte Floating-Widerruf-Klasse bleibt aus */
.ke-withdraw-float{display:none!important}

@media(max-width:520px){
  .ke-whatsapp-float{
    width:128px!important;
    min-width:128px!important;
    max-width:128px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
  }
  .ke-whatsapp-float__icon{
    width:30px!important;
    min-width:30px!important;
    max-width:30px!important;
    height:30px!important;
    min-height:30px!important;
    max-height:30px!important;
    flex:0 0 30px!important;
  }
  .ke-withdraw-end__inner{
    min-height:auto!important;
    padding:10px 0!important;
    display:grid!important;
    gap:7px!important;
    text-align:center!important;
  }
}


/* ==========================================================
   v0.7.0 NIGHT BUILD
   Shop-Abschluss: Warenkorb, Kasse, Konto, mobile Navigation
   Nur CSS. Keine neuen PHP-Hooks.
   ========================================================== */

/* Allgemeine Woo-Flächen */
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-error{
  border:0!important;
  border-radius:16px!important;
  padding:16px 18px!important;
  box-shadow:0 10px 28px rgba(9,13,24,.06)!important;
}
.woocommerce .woocommerce-message{border-left:4px solid #25d366!important}
.woocommerce .woocommerce-info{border-left:4px solid var(--ke-cyan)!important}
.woocommerce .woocommerce-error{border-left:4px solid var(--ke-magenta)!important}
.woocommerce .woocommerce-message:before,
.woocommerce .woocommerce-info:before,
.woocommerce .woocommerce-error:before{display:none!important}

/* Warenkorb */
.woocommerce-cart .site-main,
.woocommerce-checkout .site-main,
.woocommerce-account .site-main{
  padding-top:34px;
  padding-bottom:72px;
}
.woocommerce-cart .entry-title,
.woocommerce-checkout .entry-title,
.woocommerce-account .entry-title{
  font-size:clamp(2rem,4vw,3.2rem)!important;
  letter-spacing:-.03em;
  color:#111827!important;
}
.woocommerce-cart table.shop_table{
  border:1px solid #e7e9ef!important;
  border-radius:22px!important;
  overflow:hidden;
  background:#fff;
  box-shadow:0 14px 38px rgba(9,13,24,.055);
}
.woocommerce-cart table.shop_table th{
  background:#f7f8fb;
  font-size:11px!important;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.woocommerce-cart table.shop_table td{
  vertical-align:middle!important;
  border-color:#eceef2!important;
}
.woocommerce-cart table.shop_table img{
  width:74px!important;
  border-radius:12px;
  background:#f7f8fb;
}
.woocommerce-cart .product-name a{
  color:#111827!important;
  font-weight:800;
  text-decoration:none!important;
}
.woocommerce-cart .quantity .qty{
  min-height:40px;
  border:1px solid #dfe3ea!important;
  border-radius:12px!important;
}
.woocommerce-cart .actions .coupon{
  display:flex;
  gap:8px;
  align-items:center;
}
.woocommerce-cart .actions .coupon input{
  min-height:42px;
  border:1px solid #dfe3ea!important;
  border-radius:999px!important;
  padding:0 14px!important;
}
.woocommerce-cart .actions .button{
  min-height:42px!important;
  border-radius:999px!important;
  font-weight:800!important;
}
.woocommerce-cart .cart-collaterals{
  margin-top:28px!important;
}
.woocommerce-cart .cart-collaterals .cart_totals{
  padding:26px!important;
  border:1px solid #e7e9ef!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 16px 45px rgba(9,13,24,.07)!important;
}
.woocommerce-cart .cart_totals h2{
  font-size:1.45rem!important;
  margin-bottom:18px!important;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  min-height:52px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,var(--ke-orange),var(--ke-yellow))!important;
  color:#111!important;
  font-weight:900!important;
  box-shadow:0 10px 26px rgba(255,122,0,.15);
}
.woocommerce-cart .ke-continue-shopping{
  border-radius:999px!important;
}

/* Kasse */
.woocommerce-checkout form.checkout{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);
  gap:34px;
}
.woocommerce-checkout #customer_details{
  grid-column:1;
}
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review{
  grid-column:2;
}
.woocommerce-checkout #order_review_heading{
  margin:0 0 -20px!important;
  align-self:end;
  font-size:1.35rem!important;
}
.woocommerce-checkout #order_review{
  padding:24px!important;
  border:1px solid #e7e9ef!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 16px 45px rgba(9,13,24,.07)!important;
}
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2{
  float:none!important;
  width:100%!important;
}
.woocommerce-checkout .col2-set{
  display:grid;
  gap:22px;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container--default .select2-selection--single{
  min-height:46px!important;
  border:1px solid #dfe3ea!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.woocommerce form .form-row textarea{
  min-height:120px!important;
  padding:12px!important;
}
.woocommerce form .form-row label{
  font-size:11px!important;
  font-weight:800!important;
  color:#344054!important;
}
.woocommerce-checkout #payment{
  background:#f7f8fb!important;
  border-radius:16px!important;
}
.woocommerce-checkout #place_order{
  width:100%!important;
  min-height:52px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,var(--ke-orange),var(--ke-yellow))!important;
  color:#111!important;
  font-weight:900!important;
}

/* Konto */
.woocommerce-account .woocommerce{
  display:grid;
  grid-template-columns:240px minmax(0,1fr);
  gap:28px;
}
.woocommerce-account .woocommerce-MyAccount-navigation{
  float:none!important;
  width:auto!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul{
  margin:0!important;
  padding:10px!important;
  list-style:none!important;
  border:1px solid #e7e9ef;
  border-radius:20px;
  background:#fff;
  box-shadow:0 12px 34px rgba(9,13,24,.055);
}
.woocommerce-account .woocommerce-MyAccount-navigation li{
  margin:3px 0!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:block;
  padding:11px 13px;
  border-radius:12px;
  color:#344054!important;
  text-decoration:none!important;
  font-size:12px;
  font-weight:800;
}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
  background:#090d18!important;
  color:#fff!important;
}
.woocommerce-account .woocommerce-MyAccount-content{
  float:none!important;
  width:auto!important;
  padding:24px;
  border:1px solid #e7e9ef;
  border-radius:22px;
  background:#fff;
  box-shadow:0 12px 34px rgba(9,13,24,.055);
}
.woocommerce-account .woocommerce-MyAccount-content a{
  color:var(--ke-magenta)!important;
}

/* Login / Registrierung */
.woocommerce-account .u-columns.col2-set{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:22px;
}
.woocommerce-account .u-column1,
.woocommerce-account .u-column2{
  float:none!important;
  width:auto!important;
  padding:24px!important;
  border:1px solid #e7e9ef;
  border-radius:22px;
  background:#fff;
  box-shadow:0 12px 34px rgba(9,13,24,.05);
}
.woocommerce-account button.button{
  min-height:44px!important;
  padding:0 18px!important;
  border-radius:999px!important;
  background:#090d18!important;
  color:#fff!important;
}

/* Breadcrumbs und kleine Navigationsdetails */
.woocommerce .woocommerce-breadcrumb{
  margin:12px 0 18px!important;
  color:#98a2b3!important;
  font:11px Arial,sans-serif!important;
}
.woocommerce .woocommerce-breadcrumb a{
  color:#667085!important;
  text-decoration:none!important;
}
.woocommerce .woocommerce-breadcrumb a:hover{color:var(--ke-magenta)!important}

/* Produkt-Tabs */
.single-product .woocommerce-tabs ul.tabs{
  padding:0!important;
  margin:0 0 24px!important;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  border:0!important;
}
.single-product .woocommerce-tabs ul.tabs:before{display:none!important}
.single-product .woocommerce-tabs ul.tabs li{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:#f4f5f7!important;
}
.single-product .woocommerce-tabs ul.tabs li:before,
.single-product .woocommerce-tabs ul.tabs li:after{display:none!important}
.single-product .woocommerce-tabs ul.tabs li a{
  padding:9px 14px!important;
  font-size:11px!important;
}
.single-product .woocommerce-tabs ul.tabs li.active{
  background:#090d18!important;
}
.single-product .woocommerce-tabs ul.tabs li.active a{color:#fff!important}

/* Mobile Header / Shoptools */
@media(max-width:760px){
  .ke-brandbar__inner{
    width:min(100% - 20px,1240px)!important;
  }
  .ke-shoptools__inner{
    width:min(100% - 20px,1240px)!important;
  }
  .ke-shoptools__brandmark{
    width:36px!important;
    height:36px!important;
    border-radius:11px!important;
  }
}

/* Responsive Warenkorb, Kasse, Konto */
@media(max-width:900px){
  .woocommerce-checkout form.checkout{
    grid-template-columns:1fr;
  }
  .woocommerce-checkout #customer_details,
  .woocommerce-checkout #order_review_heading,
  .woocommerce-checkout #order_review{
    grid-column:1;
  }
  .woocommerce-checkout #order_review_heading{margin:18px 0 0!important}
  .woocommerce-account .woocommerce{
    grid-template-columns:1fr;
  }
}
@media(max-width:640px){
  .woocommerce-account .u-columns.col2-set{
    grid-template-columns:1fr!important;
  }
  .woocommerce-cart table.shop_table_responsive tr{
    border-bottom:1px solid #eceef2!important;
  }
  .woocommerce-cart .actions .coupon{
    display:grid!important;
    grid-template-columns:1fr;
    width:100%!important;
  }
  .woocommerce-cart .actions .coupon input,
  .woocommerce-cart .actions .coupon button{
    width:100%!important;
  }
}


/* ==========================================================
   v0.7.2 SHOP NAV POLISH
   Navigation, Kategorien, Hersteller-Look, Header-Mobile
   ========================================================== */

/* Hauptnavigation klarer und kompakter */
.main-header-menu > .menu-item > .menu-link{
  font-weight:800!important;
  font-size:13px!important;
  letter-spacing:.01em;
}
.main-header-menu > .menu-item > .menu-link:hover{
  color:var(--ke-magenta)!important;
}
.main-header-menu .sub-menu{
  border:1px solid #e7e9ef!important;
  border-radius:16px!important;
  padding:8px!important;
  box-shadow:0 16px 38px rgba(9,13,24,.10)!important;
}
.main-header-menu .sub-menu .menu-link{
  border-radius:10px!important;
  padding:10px 12px!important;
  font-size:12px!important;
}
.main-header-menu .sub-menu .menu-link:hover{
  background:#f6f7f9!important;
  color:#111827!important;
}

/* Kategorieübersichten stärker lesbar */
.woocommerce .products .product-category{
  overflow:hidden;
  border:1px solid #e7e9ef!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(9,13,24,.055)!important;
  transition:.2s ease!important;
}
.woocommerce .products .product-category:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 45px rgba(9,13,24,.10)!important;
}
.woocommerce .products .product-category a img{
  margin:0!important;
  aspect-ratio:4/3;
  object-fit:contain;
  background:#f7f8fb;
}
.woocommerce .products .product-category .woocommerce-loop-category__title{
  padding:16px 16px 18px!important;
  margin:0!important;
  color:#111827!important;
  font-size:1.05rem!important;
}
.woocommerce .products .product-category .count{
  background:transparent!important;
  color:#98a2b3!important;
  font-size:10px!important;
}

/* Herstellerseiten und Schlagwortseiten wie Shop behandeln */
.tax-product_brand .site-main,
.tax-pa-hersteller .site-main,
.tax-product_tag .site-main{
  padding-top:30px;
  padding-bottom:70px;
}
.tax-product_brand .woocommerce-products-header,
.tax-pa-hersteller .woocommerce-products-header,
.tax-product_tag .woocommerce-products-header{
  margin-bottom:28px;
  padding:30px 32px;
  border-radius:24px;
  color:#fff;
  background:
    radial-gradient(circle at 86% 18%,rgba(255,122,0,.16),transparent 22%),
    radial-gradient(circle at 14% 80%,rgba(33,199,217,.12),transparent 24%),
    linear-gradient(135deg,#090d18,#151d31);
}
.tax-product_brand .woocommerce-products-header__title,
.tax-pa-hersteller .woocommerce-products-header__title,
.tax-product_tag .woocommerce-products-header__title{
  color:#fff!important;
  margin:0!important;
}

/* Suchergebnisse im Shop */
.search-results.post-type-archive-product .site-main{
  padding-top:30px;
  padding-bottom:70px;
}
.search-results.post-type-archive-product .page-title{
  font-size:clamp(2rem,4vw,3rem)!important;
  margin-bottom:24px!important;
}

/* Suchfeld noch klarer */
.ke-product-search{
  position:relative;
}
.ke-product-search input[type="search"]{
  min-height:46px!important;
  border-radius:999px!important;
  padding-left:18px!important;
  padding-right:48px!important;
  border:1px solid rgba(17,24,39,.08)!important;
  background:#fff!important;
  box-shadow:0 8px 20px rgba(9,13,24,.055)!important;
}
.ke-product-search button{
  width:38px!important;
  height:38px!important;
  border-radius:50%!important;
  top:4px!important;
  right:4px!important;
}

/* Konto und Warenkorb im Header kompakt */
.ke-shoptools__action{
  min-height:44px!important;
  border-radius:14px!important;
  padding:6px 10px!important;
}
.ke-shoptools__action:hover{
  background:rgba(255,255,255,.08)!important;
}

/* Mobile Navigation */
@media(max-width:921px){
  .ast-mobile-header-wrap .ast-primary-header-bar{
    box-shadow:0 6px 18px rgba(9,13,24,.08);
  }
  .ast-mobile-popup-drawer .ast-mobile-popup-inner{
    background:#090d18!important;
  }
  .ast-mobile-popup-drawer .main-header-menu .menu-link{
    color:#fff!important;
    font-weight:800!important;
    border-color:rgba(255,255,255,.08)!important;
  }
  .ast-mobile-popup-drawer .main-header-menu .sub-menu .menu-link{
    color:rgba(255,255,255,.72)!important;
    background:transparent!important;
  }
  .ast-mobile-popup-drawer .ast-menu-toggle{
    color:#fff!important;
  }
}

/* Kleine Verkaufshilfe: Hover bleibt ruhig */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart{
  transition:transform .15s ease, background .15s ease!important;
}
.woocommerce ul.products li.product .button:active{
  transform:scale(.985);
}

/* Leerstände / keine Produkte */
.woocommerce-info{
  font-size:13px!important;
  line-height:1.55!important;
}


/* ==========================================================
   v0.7.3 PRODUCT DETAIL POLISH
   Produktdetailseiten, Upsells, Related, Warenkorb-Microcopy
   ========================================================== */

/* Produktgalerie ruhiger */
.single-product .flex-control-thumbs{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px!important;
  margin-top:10px!important;
}
.single-product .flex-control-thumbs li{
  width:auto!important;
  float:none!important;
}
.single-product .flex-control-thumbs img{
  border:1px solid #e7e9ef!important;
  border-radius:10px!important;
  opacity:.75!important;
  transition:.15s ease!important;
}
.single-product .flex-control-thumbs img.flex-active,
.single-product .flex-control-thumbs img:hover{
  opacity:1!important;
  border-color:#111827!important;
}

/* Produktzusatzinfos */
.single-product .summary .stock{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:8px 0 4px!important;
  padding:7px 10px;
  border-radius:999px;
  font-size:11px!important;
  font-weight:800!important;
  background:#f4f7f5;
  color:#1d6b3b!important;
}
.single-product .summary .out-of-stock{
  background:#fff1f2!important;
  color:#b42318!important;
}
.single-product .summary .product_meta > span{
  display:block;
  margin:3px 0;
}

/* Produktbeschreibung */
.single-product .woocommerce-tabs .panel h2,
.single-product .woocommerce-tabs .panel h3{
  color:#111827!important;
  margin-top:0;
}
.single-product .woocommerce-tabs .panel table{
  border:1px solid #e7e9ef!important;
  border-radius:14px!important;
  overflow:hidden;
}
.single-product .woocommerce-tabs .panel table th,
.single-product .woocommerce-tabs .panel table td{
  padding:10px 12px!important;
  border-color:#eceef2!important;
}

/* Related / Upsells */
.single-product .related.products,
.single-product .up-sells.upsells{
  margin-top:54px!important;
}
.single-product .related.products > h2,
.single-product .up-sells.upsells > h2{
  margin-bottom:20px!important;
  color:#111827!important;
  font-size:clamp(1.6rem,3vw,2.2rem)!important;
}

/* Produktkacheln auf Detailseite etwas kompakter */
.single-product .related.products ul.products li.product,
.single-product .up-sells.upsells ul.products li.product{
  min-height:100%;
}

/* Cross-Sells im Warenkorb */
.woocommerce-cart .cross-sells{
  margin-top:42px!important;
}
.woocommerce-cart .cross-sells > h2{
  font-size:1.65rem!important;
  margin-bottom:18px!important;
}

/* Cart Empty */
.woocommerce-cart .cart-empty{
  text-align:center!important;
  padding:26px!important;
  border-radius:18px!important;
  background:#f7f8fb!important;
  color:#667085!important;
}
.woocommerce-cart .return-to-shop{
  text-align:center;
}
.woocommerce-cart .return-to-shop .button{
  min-height:44px!important;
  padding:0 18px!important;
  border-radius:999px!important;
  background:#090d18!important;
  color:#fff!important;
}

/* Checkout Zusammenfassung besser lesbar */
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td{
  padding:12px 8px!important;
}
.woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout-review-order-table .order-total td{
  font-size:1.08rem!important;
  font-weight:900!important;
}
.woocommerce-checkout-review-order-table .product-name{
  font-size:12px!important;
}

/* Account Bestellungen */
.woocommerce-account table.shop_table{
  border:1px solid #e7e9ef!important;
  border-radius:16px!important;
  overflow:hidden!important;
}
.woocommerce-account table.shop_table th{
  background:#f7f8fb!important;
  font-size:10px!important;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.woocommerce-account table.shop_table td{
  vertical-align:middle!important;
  border-color:#eceef2!important;
}
.woocommerce-account table.shop_table .button{
  border-radius:999px!important;
  padding:8px 12px!important;
  font-size:10px!important;
}

/* Forms und Datenschutz */
.woocommerce form .form-row .required{
  color:var(--ke-magenta)!important;
}
.woocommerce-privacy-policy-text{
  font:11px/1.55 Arial,sans-serif!important;
  color:#7a828a!important;
}

/* Mobile Produkt */
@media(max-width:640px){
  .single-product .flex-control-thumbs{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .single-product .product_title{
    font-size:2rem!important;
  }
  .single-product .summary .price{
    font-size:1.35rem!important;
  }
}


/* ==========================================================
   v0.7.4 MOBILE HOTFIX
   Mobile Astra-Menü sichtbar + Header/Shoptools sauber stapeln
   ========================================================== */

@media(max-width:921px){

  #ast-mobile-header,
  .ast-mobile-header-wrap{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    position:relative!important;
    z-index:9997!important;
  }

  #ast-desktop-header{
    display:none!important;
  }

  .ast-button-wrap,
  .ast-mobile-menu-trigger-minimal,
  .ast-mobile-menu-trigger-fill,
  .main-header-menu-toggle,
  button.menu-toggle{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    visibility:visible!important;
    opacity:1!important;
    min-width:44px!important;
    min-height:44px!important;
    z-index:9999!important;
  }

  .ast-mobile-header-content,
  .ast-mobile-popup-drawer,
  .ast-mobile-popup-inner{
    z-index:9999!important;
  }

  .ke-shoptools{
    position:relative!important;
    z-index:9990!important;
  }

  .ke-shoptools__inner{
    display:grid!important;
    grid-template-columns:1fr auto auto!important;
    grid-template-areas:
      "brand account cart"
      "search search search"!important;
    gap:8px!important;
    align-items:center!important;
    padding:8px 0 10px!important;
  }

  .ke-shoptools__brand{
    grid-area:brand!important;
    min-width:0!important;
  }

  .ke-shoptools__search{
    grid-area:search!important;
    width:100%!important;
    min-width:0!important;
  }

  .ke-shoptools__account{
    grid-area:account!important;
  }

  .ke-shoptools__cart{
    grid-area:cart!important;
  }

  .ke-product-search,
  .ke-product-search form{
    width:100%!important;
    max-width:none!important;
  }

  .ke-product-search input[type="search"]{
    width:100%!important;
    min-width:0!important;
  }

  .ke-shoptools__brandcopy{
    min-width:0!important;
  }

  .ke-shoptools__brandcopy strong{
    font-size:13px!important;
    white-space:nowrap!important;
  }

  .ke-shoptools__brandcopy small{
    font-size:9px!important;
    white-space:nowrap!important;
  }

  .ke-shoptools__action{
    min-width:44px!important;
    min-height:42px!important;
    padding:5px 7px!important;
  }

  .ke-shoptools__action span,
  .ke-shoptools__action small{
    font-size:9px!important;
  }

  .ke-floating-ui{
    z-index:9980!important;
  }

  html, body{
    overflow-x:hidden!important;
  }

  .ke-shell,
  .ast-container,
  .site-content>.ast-container{
    width:min(100% - 20px,1240px)!important;
    max-width:100%!important;
  }
}

@media(max-width:560px){

  .ke-shoptools__brandcopy{
    display:none!important;
  }

  .ke-shoptools__inner{
    grid-template-columns:auto 1fr auto!important;
    grid-template-areas:
      "brand account cart"
      "search search search"!important;
  }

  .ke-shoptools__brandmark{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
  }

  .ast-mobile-popup-drawer .main-header-menu .menu-link,
  .ast-mobile-header-content .main-header-menu .menu-link{
    min-height:46px!important;
    display:flex!important;
    align-items:center!important;
    padding:10px 16px!important;
  }

  .ke-product-search input[type="search"]{
    min-height:44px!important;
    font-size:14px!important;
  }
}


/* ==========================================================
   v0.7.5 FINISH POLISH
   Accessibility, Fokus, mobile Feinschliff, konsistente Karten
   ========================================================== */

/* Tastaturfokus sichtbar und markenkonform */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
  outline:3px solid rgba(33,199,217,.45)!important;
  outline-offset:3px!important;
}

/* Buttons konsistent */
.ke-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button{
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease!important;
}
.ke-btn:active,
.woocommerce a.button:active,
.woocommerce button.button:active,
.woocommerce input.button:active{
  transform:translateY(1px) scale(.99);
}

/* Inhalt etwas ruhiger lesbar */
.ke-site p,
.ke-site li{
  text-wrap:pretty;
}
.ke-site h1,
.ke-site h2,
.ke-site h3{
  text-wrap:balance;
}

/* Karten auf Inhaltsseiten angleichen */
.ke-card,
.ke-service-card,
.ke-module,
.ke-contactcards>a,
.ke-contactcards>div{
  border-color:#e7e9ef!important;
}

/* Bilder niemals über Container hinaus */
.ke-site img,
.woocommerce img{
  max-width:100%;
  height:auto;
}

/* Footer kompakter auf Mobil */
@media(max-width:760px){
  .site-footer .ast-builder-grid-row{
    row-gap:18px!important;
  }
  .site-footer .site-footer-section{
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
}

/* Hero auf Mobil weniger hoch und besser lesbar */
@media(max-width:640px){
  .ke-pagehero,
  .ke-hero{
    min-height:auto!important;
    padding-top:54px!important;
    padding-bottom:54px!important;
  }

  .ke-pagehero h1,
  .ke-hero h1{
    font-size:clamp(2.2rem,11vw,3.4rem)!important;
    line-height:.98!important;
  }

  .ke-pagehero p,
  .ke-hero p{
    font-size:14px!important;
    line-height:1.65!important;
  }

  .ke-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  .ke-actions .ke-btn{
    width:100%!important;
    justify-content:center!important;
  }
}

/* Kleine Geräte: Konto/Warenkorb nicht mit Text überladen */
@media(max-width:430px){
  .ke-shoptools__account .ke-shoptools__action-copy,
  .ke-shoptools__cart .ke-shoptools__action-copy{
    display:none!important;
  }

  .ke-shoptools__account,
  .ke-shoptools__cart{
    min-width:42px!important;
  }

  .ke-shoptools__action{
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    justify-content:center!important;
  }
}

/* Reduced Motion respektieren */
@media(prefers-reduced-motion:reduce){
  *,
  *:before,
  *:after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
    scroll-behavior:auto!important;
  }
}

/* Lange Produkt- und Kategorienamen sauber umbrechen */
.woocommerce-loop-product__title,
.woocommerce-loop-category__title,
.product_title{
  overflow-wrap:anywhere;
  hyphens:auto;
}

/* Shop auf Tablet etwas luftiger */
@media(min-width:641px) and (max-width:1024px){
  .woocommerce ul.products{
    gap:16px!important;
  }
  .woocommerce ul.products li.product{
    padding:12px!important;
  }
}


/* ==========================================================
   v0.7.6 F3 sichtbar + Kategoriesuche
   ========================================================== */

/* Kategorieauswahl direkt in der großen Shopsuche */
.ke-shoptools__search{
  display:grid!important;
  grid-template-columns:170px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:0!important;
  position:relative!important;
  overflow:visible!important;
}
.ke-shoptools__category{
  height:46px!important;
  min-width:0!important;
  width:100%!important;
  padding:0 30px 0 13px!important;
  border:1px solid rgba(17,24,39,.08)!important;
  border-right:0!important;
  border-radius:999px 0 0 999px!important;
  background:#f6f7f9!important;
  color:#344054!important;
  font:11px Arial,sans-serif!important;
  font-weight:700!important;
  cursor:pointer!important;
  box-shadow:0 8px 20px rgba(9,13,24,.04)!important;
}
.ke-shoptools__search input[type="search"]{
  border-radius:0!important;
  border-left:1px solid #e7e9ef!important;
  padding-left:42px!important;
}
.ke-shoptools__searchicon{
  left:184px!important;
  z-index:3!important;
}
.ke-shoptools__search button{
  border-radius:0 999px 999px 0!important;
  min-width:78px!important;
  height:46px!important;
  position:static!important;
}

/* Gesperrter Fachkundenpreis */
.ke-restricted-price{
  display:inline-flex!important;
  align-items:center!important;
  min-height:34px!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  background:#f4f5f7!important;
  color:#667085!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1.25!important;
}
.ke-access-notice{
  margin:16px 0!important;
  padding:16px!important;
  border-radius:16px!important;
  border:1px solid #e7e9ef!important;
  border-left:4px solid var(--ke-violet)!important;
  background:#f8f8fb!important;
  color:#344054!important;
  font:12px/1.55 Arial,sans-serif!important;
}
.ke-access-notice .button{
  margin-top:10px!important;
  border-radius:999px!important;
  background:#090d18!important;
  color:#fff!important;
}

/* Auf Archivkarten bleibt ein gesperrter Artikel sichtbar, aber ohne Kaufbutton.
   WooCommerce blendet den Button über is_purchasable automatisch aus. */
.woocommerce ul.products li.product .ke-restricted-price{
  margin-top:auto!important;
  margin-bottom:8px!important;
}

/* Mobile: Kategorie über Suchfeld */
@media(max-width:760px){
  .ke-shoptools__search{
    grid-template-columns:1fr auto!important;
    grid-template-areas:
      "category category"
      "input button"!important;
    gap:6px!important;
  }
  .ke-shoptools__category{
    grid-area:category!important;
    height:40px!important;
    border:1px solid rgba(17,24,39,.08)!important;
    border-radius:12px!important;
    padding:0 34px 0 12px!important;
  }
  .ke-shoptools__search input[type="search"]{
    grid-area:input!important;
    border-radius:999px 0 0 999px!important;
    border-left:1px solid rgba(17,24,39,.08)!important;
    padding-left:40px!important;
  }
  .ke-shoptools__search button{
    grid-area:button!important;
    border-radius:0 999px 999px 0!important;
    height:44px!important;
  }
  .ke-shoptools__searchicon{
    left:14px!important;
    bottom:13px!important;
    top:auto!important;
  }
}


/* ==========================================================
   v0.7.7 SEARCH BAR FIX
   Kategorie + Suchfeld + kompakter Button in EINER Zeile
   ========================================================== */

@media(min-width:761px){
  .ke-shoptools__search{
    display:grid!important;
    grid-template-columns:145px minmax(260px,1fr) 58px!important;
    grid-template-areas:"category input button"!important;
    align-items:stretch!important;
    gap:0!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    overflow:visible!important;
  }

  .ke-shoptools__category{
    grid-area:category!important;
    width:100%!important;
    min-width:0!important;
    height:46px!important;
    margin:0!important;
    padding:0 30px 0 13px!important;
    border:1px solid #e7e9ef!important;
    border-right:0!important;
    border-radius:999px 0 0 999px!important;
    background:#f6f7f9!important;
    box-shadow:none!important;
  }

  .ke-shoptools__search input[type="search"]{
    grid-area:input!important;
    width:100%!important;
    min-width:0!important;
    height:46px!important;
    margin:0!important;
    padding:0 14px 0 42px!important;
    border:1px solid #e7e9ef!important;
    border-left:1px solid #e1e4e8!important;
    border-right:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }

  .ke-shoptools__searchicon{
    position:absolute!important;
    left:160px!important;
    top:50%!important;
    bottom:auto!important;
    transform:translateY(-50%)!important;
    z-index:4!important;
    pointer-events:none!important;
  }

  .ke-shoptools__search button{
    grid-area:button!important;
    position:static!important;
    inset:auto!important;
    width:58px!important;
    min-width:58px!important;
    max-width:58px!important;
    height:46px!important;
    min-height:46px!important;
    margin:0!important;
    padding:0!important;
    border-radius:0 999px 999px 0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:0!important;
    line-height:1!important;
    white-space:nowrap!important;
    background:#090d18!important;
    color:#fff!important;
    border:0!important;
    box-shadow:none!important;
  }

  .ke-shoptools__search button:after{
    content:"⌕";
    font-size:20px!important;
    line-height:1!important;
    color:#fff!important;
  }

  .ke-shoptools__search button:hover{
    background:var(--ke-magenta)!important;
  }
}

/* Tablet: Kategorie etwas schmaler, Suche behält Priorität */
@media(min-width:761px) and (max-width:1050px){
  .ke-shoptools__search{
    grid-template-columns:125px minmax(180px,1fr) 52px!important;
  }
  .ke-shoptools__searchicon{
    left:139px!important;
  }
  .ke-shoptools__search button{
    width:52px!important;
    min-width:52px!important;
    max-width:52px!important;
  }
}


/* ==========================================================
   v0.7.8 SEARCH BAR STABLE
   Robuste Struktur: Kategorie | Suchfeld | Icon-Button
   ========================================================== */

.ke-shoptools__search--v2{
  display:flex!important;
  align-items:stretch!important;
  gap:0!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  overflow:visible!important;
}

.ke-shoptools__search--v2 > .screen-reader-text,
.ke-shoptools__search--v2 .screen-reader-text{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

.ke-shoptools__search--v2 .ke-shoptools__category{
  flex:0 0 150px!important;
  width:150px!important;
  min-width:150px!important;
  height:46px!important;
  margin:0!important;
  padding:0 30px 0 14px!important;
  border:1px solid #e1e5ea!important;
  border-right:0!important;
  border-radius:999px 0 0 999px!important;
  background:#f6f7f9!important;
  color:#344054!important;
  font:700 11px/1 Arial,sans-serif!important;
  box-shadow:none!important;
}

.ke-shoptools__search--v2 .ke-shoptools__searchfield{
  position:relative!important;
  flex:1 1 auto!important;
  min-width:0!important;
  height:46px!important;
}

.ke-shoptools__search--v2 .ke-shoptools__searchfield input[type="search"]{
  width:100%!important;
  min-width:0!important;
  height:46px!important;
  margin:0!important;
  padding:0 15px 0 42px!important;
  border:1px solid #e1e5ea!important;
  border-right:0!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
  font-size:13px!important;
}

.ke-shoptools__search--v2 .ke-shoptools__searchicon{
  position:absolute!important;
  left:14px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:2!important;
  pointer-events:none!important;
  color:#667085!important;
}

.ke-shoptools__search--v2 > button{
  flex:0 0 52px!important;
  width:52px!important;
  min-width:52px!important;
  max-width:52px!important;
  height:46px!important;
  min-height:46px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0 999px 999px 0!important;
  background:#090d18!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  position:static!important;
  inset:auto!important;
  box-shadow:none!important;
}

.ke-shoptools__search--v2 > button span{
  display:block!important;
  font-size:20px!important;
  line-height:1!important;
  color:#fff!important;
}

.ke-shoptools__search--v2 > button:hover{
  background:var(--ke-magenta)!important;
}

/* Mobile: Kategorie oben, darunter Suche */
@media(max-width:760px){
  .ke-shoptools__search--v2{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 48px!important;
    grid-template-areas:
      "category category"
      "field button"!important;
    gap:6px!important;
  }

  .ke-shoptools__search--v2 .ke-shoptools__category{
    grid-area:category!important;
    width:100%!important;
    min-width:0!important;
    height:40px!important;
    border:1px solid #e1e5ea!important;
    border-radius:12px!important;
  }

  .ke-shoptools__search--v2 .ke-shoptools__searchfield{
    grid-area:field!important;
    height:44px!important;
  }

  .ke-shoptools__search--v2 .ke-shoptools__searchfield input[type="search"]{
    height:44px!important;
    border:1px solid #e1e5ea!important;
    border-right:0!important;
    border-radius:999px 0 0 999px!important;
  }

  .ke-shoptools__search--v2 > button{
    grid-area:button!important;
    width:48px!important;
    min-width:48px!important;
    max-width:48px!important;
    height:44px!important;
    min-height:44px!important;
  }
}


/* ==========================================================
   v0.7.9 SEARCH ICON CLEANUP
   Eine einzige Lupe im Suchbutton
   ========================================================== */

.ke-shoptools__search--v2 > button{
  font-size:0!important;
}
.ke-shoptools__search--v2 > button span{
  display:none!important;
}
.ke-shoptools__search--v2 > button:before{
  content:"";
  width:16px!important;
  height:16px!important;
  display:block!important;
  border:2px solid #fff!important;
  border-radius:50%!important;
  box-sizing:border-box!important;
  position:relative!important;
}
.ke-shoptools__search--v2 > button:after{
  content:"";
  width:7px!important;
  height:2px!important;
  display:block!important;
  background:#fff!important;
  border-radius:999px!important;
  position:absolute!important;
  transform:translate(6px,6px) rotate(45deg)!important;
}
.ke-shoptools__search--v2 > button{
  position:relative!important;
}


/* ==========================================================
   v0.8.0 Kategorie- und Fachkundenbezeichnungen vereinheitlicht
   ========================================================== */
.ke-restricted-price{
  max-width:100%!important;
  white-space:normal!important;
  text-align:left!important;
}
.ke-access-notice strong{
  color:#111827!important;
}


/* ==========================================================
   v0.8.2 PRODUKTDATEN
   Kompakte technische Fakten im Produktgrid und Einzelprodukt
   ========================================================== */

.ke-product-facts{
  font-family:Arial,sans-serif;
}
.ke-product-facts--loop{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:2px 0 10px;
}
.ke-product-facts--loop:empty{display:none!important}
.ke-product-facts--loop .ke-product-fact{
  min-width:0;
  display:flex;
  align-items:center;
  gap:4px;
  padding:5px 8px;
  border:1px solid #e8ebf0;
  border-radius:999px;
  background:#f7f8fa;
  color:#4b5563;
  white-space:nowrap;
}
.ke-product-facts--loop .ke-product-fact small{
  font-size:9px;
  line-height:1;
  color:#8a929c;
}
.ke-product-facts--loop .ke-product-fact strong{
  font-size:10px;
  line-height:1;
  color:#111827;
  font-weight:800;
}
.ke-product-facts--single{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:18px 0 4px;
}
.ke-product-facts--single .ke-product-fact{
  min-width:0;
  padding:11px 12px;
  border:1px solid #e7e9ef;
  border-radius:14px;
  background:#f7f8fa;
}
.ke-product-facts--single .ke-product-fact small,
.ke-product-facts--single .ke-product-fact strong{
  display:block;
}
.ke-product-facts--single .ke-product-fact small{
  margin-bottom:3px;
  color:#7a828a;
  font-size:10px;
  line-height:1.2;
}
.ke-product-facts--single .ke-product-fact strong{
  color:#111827;
  font-size:13px;
  line-height:1.25;
  font-weight:900;
}
@media(max-width:760px){
  .ke-product-facts--single{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* ==========================================================
   v0.8.3 PRODUKTDETAIL / ÄHNLICHE PRODUKTE
   ========================================================== */

/* Technische Fakten auf Einzelprodukt klar vor Kaufbereich platzieren */
.single-product .ke-product-facts--single{
  margin:16px 0 18px!important;
  padding:0!important;
}

/* Ähnliche Produkte nicht als schmale Seitenleiste zusammendrücken */
.single-product .related.products{
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  margin-top:42px!important;
}
.single-product .related.products > h2{
  margin-bottom:20px!important;
}
.single-product .related.products ul.products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
  width:100%!important;
}
.single-product .related.products ul.products li.product{
  width:auto!important;
  min-width:0!important;
  margin:0!important;
}
.single-product .related.products ul.products li.product .woocommerce-loop-product__title{
  font-size:15px!important;
  line-height:1.25!important;
}
.single-product .related.products ul.products li.product .button{
  width:100%!important;
  min-height:42px!important;
  padding:10px 12px!important;
  border-radius:999px!important;
  white-space:normal!important;
  line-height:1.1!important;
}

/* Tabs/Description volle Breite, Related darunter */
.single-product .woocommerce-tabs{
  float:none!important;
  width:100%!important;
  max-width:100%!important;
  clear:both!important;
}

@media(max-width:980px){
  .single-product .related.products ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:560px){
  .single-product .related.products ul.products{
    grid-template-columns:1fr!important;
  }
}


/* ==========================================================
   v0.8.4 VERSANDHINWEIS
   Abholartikel zeigen keine widersprüchlichen Versandkostenhinweise
   ========================================================== */
.ke-shipping-mode-marker{
  display:none!important;
}
.ke-shipping-text-pickup{
  color:#7a828a!important;
  text-decoration:none!important;
  cursor:default!important;
}
.ke-pickup-notice{
  display:flex;
  align-items:center;
  gap:10px;
  margin:12px 0 16px;
  padding:10px 12px;
  border:1px solid #e7e9ef;
  border-radius:12px;
  background:#f7f8fa;
}
.ke-pickup-notice strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:5px 9px;
  border-radius:999px;
  background:#111827;
  color:#fff;
  font-size:11px;
  line-height:1;
  white-space:nowrap;
}
.ke-pickup-notice span{
  color:#505966;
  font-size:12px;
  line-height:1.35;
}


/* ==========================================================
   v0.8.7 STABILER ROLLBACK
   Keine Eingriffe mehr in Karten-Flex/Grid.
   Nur optisch gleiche Button-Mindesthöhe.
   ========================================================== */

.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product a.added_to_cart{
  min-height:44px!important;
  padding:10px 14px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1.15!important;
  border-radius:999px!important;
}


/* ==========================================================
   v0.8.8 ÄHNLICHE PRODUKTE – SAUBERE AUSRICHTUNG
   Nur der Related-Bereich wird angefasst.
   ========================================================== */

.single-product .related.products ul.products{
  align-items:stretch!important;
}

.single-product .related.products ul.products li.product{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
}

.single-product .related.products ul.products li.product .astra-shop-summary-wrap{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
}

.single-product .related.products ul.products li.product .woocommerce-loop-product__title{
  min-height:4.8em!important;
  margin-bottom:8px!important;
}

.single-product .related.products ul.products li.product .price{
  margin-top:auto!important;
  min-height:28px!important;
}

.single-product .related.products ul.products li.product a.button,
.single-product .related.products ul.products li.product a.added_to_cart{
  width:100%!important;
  min-height:44px!important;
  margin-top:10px!important;
  padding:10px 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1.1!important;
  border-radius:999px!important;
  box-sizing:border-box!important;
}


/* ==========================================================
   v0.8.9 ÄHNLICHE PRODUKTE – BADGES & FEINSCHLIFF
   Verhindert Überlagerungen bei "Nicht vorrätig" + "Nur Abholung"
   ========================================================== */

.single-product .related.products ul.products li.product{
  position:relative!important;
}

/* Lagerstatus nicht mehr über dem Abhol-Badge */
.single-product .related.products ul.products li.product .ast-shop-product-out-of-stock,
.single-product .related.products ul.products li.product .out-of-stock{
  position:static!important;
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  margin:6px 0 6px!important;
  padding:0!important;
  background:transparent!important;
  color:#0875e1!important;
  font-size:14px!important;
  line-height:1.05!important;
  font-weight:900!important;
  text-align:left!important;
  transform:none!important;
}

/* Abhol-Badge bekommt seinen eigenen festen Platz */
.single-product .related.products ul.products li.product .ke-pickup-notice,
.single-product .related.products ul.products li.product .ke-shipping-text-pickup{
  position:static!important;
}

/* Produktinfos etwas ruhiger und konsistenter */
.single-product .related.products ul.products li.product .ast-woo-product-category,
.single-product .related.products ul.products li.product .product-category{
  min-height:34px!important;
  line-height:1.2!important;
}

/* Weiterlesen und Warenkorb optisch identisch */
.single-product .related.products ul.products li.product a.button{
  min-height:46px!important;
  height:46px!important;
  width:100%!important;
  padding:0 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1.05!important;
  box-sizing:border-box!important;
}


/* ==========================================================
   v0.9.1 SILVESTERVERKAUF 2026
   Dezenter, gut sichtbarer Hinweis unter dem Header
   ========================================================== */
.ke-sale-notice{
  width:100%;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid #e7e9ef;
  background:linear-gradient(90deg,#0b1020 0%,#151a2f 60%,#23173a 100%);
  color:#fff;
}
.ke-sale-notice__inner{
  max-width:1280px;
  margin:0 auto;
  padding:8px 22px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  text-align:center;
}
.ke-sale-notice__badge{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:5px 10px;
  border-radius:999px;
  background:linear-gradient(90deg,#ff2f74,#ff7a00);
  color:#fff;
  font-size:11px;
  line-height:1;
  font-weight:900;
  white-space:nowrap;
}
.ke-sale-notice__text{
  font-size:12px;
  line-height:1.35;
  color:#f7f8fb;
}
.ke-sale-notice__text strong{ color:#fff; }
@media(max-width:760px){
  .ke-sale-notice__inner{
    padding:8px 14px;
    gap:7px;
    flex-direction:column;
  }
  .ke-sale-notice__text{ font-size:11px; }
}


/* ==========================================================
   v0.9.2 SHOPFILTER
   Kategorie, Hersteller, Kaliber und Verfügbarkeit
   ========================================================== */

.ke-shop-filter{
  margin:0 0 22px!important;
  padding:16px!important;
  border:1px solid #e7e9ef!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(11,16,32,.05)!important;
}
.ke-shop-filter__head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-bottom:12px!important;
}
.ke-shop-filter__head > div{
  display:flex!important;
  align-items:baseline!important;
  gap:9px!important;
  flex-wrap:wrap!important;
}
.ke-shop-filter__head strong{
  color:#0b1020!important;
  font-size:15px!important;
  line-height:1.1!important;
  font-weight:900!important;
}
.ke-shop-filter__head span{
  color:#747d89!important;
  font-size:11px!important;
  line-height:1.3!important;
}
.ke-shop-filter__reset{
  color:#6b7280!important;
  font-size:10px!important;
  font-weight:800!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.ke-shop-filter__reset:hover{
  color:var(--ke-magenta)!important;
}
.ke-shop-filter__grid{
  display:grid!important;
  grid-template-columns:1.45fr 1.15fr .9fr 1fr auto!important;
  gap:8px!important;
  align-items:end!important;
}
.ke-shop-filter label{
  display:block!important;
  margin:0!important;
}
.ke-shop-filter label > span{
  display:block!important;
  margin:0 0 5px 3px!important;
  color:#7a828a!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}
.ke-shop-filter select{
  width:100%!important;
  height:42px!important;
  margin:0!important;
  padding:0 32px 0 12px!important;
  border:1px solid #dfe3e8!important;
  border-radius:12px!important;
  background:#f8f9fb!important;
  color:#242b36!important;
  font-size:11px!important;
  font-weight:700!important;
  box-shadow:none!important;
}
.ke-shop-filter select:focus{
  border-color:#aab4c1!important;
  background:#fff!important;
  outline:none!important;
}
.ke-shop-filter__submit{
  min-width:126px!important;
  height:42px!important;
  margin:0!important;
  padding:0 16px!important;
  border:0!important;
  border-radius:12px!important;
  background:#0b1020!important;
  color:#fff!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:900!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}
.ke-shop-filter__submit:hover{
  background:var(--ke-magenta)!important;
}

@media(max-width:1050px){
  .ke-shop-filter__grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .ke-shop-filter__submit{
    width:100%!important;
  }
}
@media(max-width:620px){
  .ke-shop-filter{
    padding:13px!important;
    border-radius:15px!important;
  }
  .ke-shop-filter__head{
    align-items:flex-start!important;
  }
  .ke-shop-filter__head > div{
    display:block!important;
  }
  .ke-shop-filter__head span{
    display:block!important;
    margin-top:4px!important;
  }
  .ke-shop-filter__grid{
    grid-template-columns:1fr!important;
  }
  .ke-shop-filter__submit{
    width:100%!important;
  }
}


/* ==========================================================
   v0.9.13 PRODUKTBADGES
   Neu / Angebot / Vorbestellbar
   ========================================================== */
.woocommerce ul.products li.product,
.single-product div.product{
  position:relative!important;
}

.ke-product-badges{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin:0 0 8px!important;
  z-index:5!important;
}

.woocommerce ul.products li.product .ke-product-badges{
  position:absolute!important;
  top:10px!important;
  left:10px!important;
  right:10px!important;
  margin:0!important;
  pointer-events:none!important;
}

.single-product .summary .ke-product-badges{
  position:static!important;
  margin:0 0 10px!important;
}

.ke-product-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:25px!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  color:#fff!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
  box-shadow:0 4px 12px rgba(11,16,32,.16)!important;
  white-space:nowrap!important;
}

.ke-product-badge--new{
  background:#166534!important;
}
.ke-product-badge--sale{
  background:#e31b78!important;
}
.ke-product-badge--preorder{
  background:#0b6fa4!important;
}

/* WooCommerce/Astra Standard-Sale-Badge ausblenden, damit "Angebot" nicht doppelt erscheint. */
.woocommerce span.onsale{
  display:none!important;
}

@media(max-width:760px){
  .ke-product-badge{
    min-height:23px!important;
    padding:4px 8px!important;
    font-size:9px!important;
  }
}


/* ==========================================================
   v0.9.15 DESKTOP-HEADER
   Desktop bleibt Desktop. Navigation darf nicht umbrechen.
   ========================================================== */

@media(min-width:922px){

  /* Astra-Hauptzeile kompakt halten */
  #ast-desktop-header .ast-primary-header-bar .site-primary-header-wrap{
    min-height:68px!important;
  }

  #ast-desktop-header .ast-builder-grid-row{
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
  }

  #ast-desktop-header .site-header-primary-section-left{
    min-width:170px!important;
    width:auto!important;
  }

  #ast-desktop-header .site-header-primary-section-right{
    min-width:0!important;
    width:100%!important;
    justify-content:flex-end!important;
  }

  #ast-desktop-header .main-header-menu,
  #ast-desktop-header .ast-builder-menu-1 .main-header-menu{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:0!important;
    width:auto!important;
    white-space:nowrap!important;
  }

  #ast-desktop-header .main-header-menu > .menu-item{
    flex:0 0 auto!important;
    margin:0!important;
  }

  #ast-desktop-header .main-header-menu > .menu-item > .menu-link{
    padding-left:13px!important;
    padding-right:13px!important;
    font-size:13px!important;
    white-space:nowrap!important;
  }

  /* Keine zweite Menüzeile / künstliche Höhe */
  #ast-desktop-header .ast-builder-menu,
  #ast-desktop-header .ast-builder-menu-1,
  #ast-desktop-header .site-header-section{
    min-height:0!important;
  }
}

/* Erst auf wirklich schmalen Viewports auf Mobile umschalten.
   Nicht bereits bei normaler Desktopbreite. */
@media(max-width:921px){
  #ast-desktop-header{
    display:none!important;
  }
  #ast-mobile-header,
  .ast-mobile-header-wrap{
    display:block!important;
  }
}


/* ==========================================================
   v0.9.16 SHOPFILTER: NEU / ANGEBOT / VORBESTELLBAR
   ========================================================== */
.ke-shop-filter__grid{
  grid-template-columns:1.3fr 1.05fr .8fr .9fr .95fr auto!important;
}
@media(max-width:1180px){
  .ke-shop-filter__grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  .ke-shop-filter__grid{
    grid-template-columns:1fr!important;
  }
}


/* ==========================================================
   v0.9.17 SHOP SCHNELLZUGRIFF
   Direkte Einstiege in die wichtigsten Bereiche.
   ========================================================== */
.ke-shop-quicknav{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin:0 0 12px!important;
  padding:0!important;
  overflow:hidden!important;
}
.ke-shop-quicknav__label{
  flex:0 0 auto!important;
  color:#6b7280!important;
  font-size:10px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
}
.ke-shop-quicknav__items{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  overflow-x:auto!important;
  scrollbar-width:none!important;
  padding:2px 0!important;
}
.ke-shop-quicknav__items::-webkit-scrollbar{
  display:none!important;
}
.ke-shop-quicknav__item{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:34px!important;
  padding:8px 12px!important;
  border:1px solid #e1e5ea!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#1f2937!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:800!important;
  text-decoration:none!important;
  transition:.16s ease!important;
}
.ke-shop-quicknav__item:hover,
.ke-shop-quicknav__item.is-active{
  border-color:#0b1020!important;
  background:#0b1020!important;
  color:#fff!important;
}

@media(max-width:760px){
  .ke-shop-quicknav{
    display:block!important;
  }
  .ke-shop-quicknav__label{
    display:block!important;
    margin-bottom:6px!important;
  }
}


/* ==========================================================
   v0.9.18 AKTIVE FILTER
   Sichtbare, einzeln entfernbare Filter-Chips
   ========================================================== */
.ke-active-filters{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin:-6px 0 14px!important;
}
.ke-active-filters__label{
  color:#7a828a!important;
  font-size:9px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
}
.ke-active-filter-chip{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  min-height:28px!important;
  padding:6px 9px!important;
  border:1px solid #dfe3e8!important;
  border-radius:999px!important;
  background:#f7f8fa!important;
  color:#1f2937!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:800!important;
  text-decoration:none!important;
}
.ke-active-filter-chip span{
  font-size:14px!important;
  line-height:.8!important;
  color:#8a929c!important;
}
.ke-active-filter-chip:hover{
  border-color:#0b1020!important;
  background:#0b1020!important;
  color:#fff!important;
}
.ke-active-filter-chip:hover span{
  color:#fff!important;
}


/* ==========================================================
   v0.9.19 PRODUKTE PRO SEITE
   24 / 48 / 96, Filter bleiben erhalten.
   ========================================================== */
.woocommerce .ke-per-page{
  float:right!important;
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  margin:0 10px 16px 0!important;
}
.woocommerce .ke-per-page label{
  color:#6b7280!important;
  font-size:10px!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
.woocommerce .ke-per-page select{
  height:42px!important;
  min-width:72px!important;
  margin:0!important;
  padding:0 28px 0 10px!important;
  border:1px solid #dfe3e8!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#1f2937!important;
  font-size:11px!important;
  font-weight:800!important;
  box-shadow:none!important;
}
@media(max-width:760px){
  .woocommerce .ke-per-page{
    float:none!important;
    width:100%!important;
    margin:0 0 10px!important;
    justify-content:flex-end!important;
  }
}


/* ==========================================================
   v0.9.20 SHOP FEINSCHLIFF
   Kompakter Hero, klarerer Schnellzugriff, ruhigere Abstände
   ========================================================== */

.woocommerce-shop .woocommerce-products-header,
.tax-product_cat .woocommerce-products-header{
  margin-bottom:12px!important;
  padding:20px 28px!important;
  min-height:0!important;
  border-radius:18px!important;
}

.woocommerce-shop .woocommerce-products-header__title,
.tax-product_cat .woocommerce-products-header__title{
  margin:0!important;
  font-size:clamp(2rem,3vw,2.6rem)!important;
  line-height:1!important;
}

.ke-shop-quicknav{
  margin:0 0 10px!important;
  padding:7px 10px!important;
  border:1px solid #e8ebf0!important;
  border-radius:14px!important;
  background:#f8f9fb!important;
}

.ke-shop-quicknav__label{
  color:#5f6875!important;
}

.ke-shop-quicknav__item{
  min-height:32px!important;
  padding:7px 11px!important;
  background:#fff!important;
  border-color:#dde2e8!important;
}

.ke-shop-filter{
  margin-top:0!important;
  margin-bottom:14px!important;
  padding:14px!important;
  border-radius:16px!important;
}

.ke-shop-filter__head{
  margin-bottom:10px!important;
}

.ke-active-filters{
  margin:-2px 0 12px!important;
}

/* Ergebniszahl, Sortierung und Seitengröße optisch enger zusammenführen */
.woocommerce .woocommerce-result-count{
  margin:7px 0 12px!important;
  min-height:40px!important;
  display:flex!important;
  align-items:center!important;
}

.woocommerce .woocommerce-ordering,
.woocommerce .ke-per-page{
  margin-bottom:12px!important;
}

.woocommerce .woocommerce-ordering select,
.woocommerce .ke-per-page select{
  height:40px!important;
  min-height:40px!important;
}

/* weniger Luft bis zum Produktgrid */
.woocommerce ul.products{
  margin-top:0!important;
}

@media(max-width:760px){
  .woocommerce-shop .woocommerce-products-header,
  .tax-product_cat .woocommerce-products-header{
    padding:16px 18px!important;
    margin-bottom:10px!important;
  }

  .ke-shop-quicknav{
    padding:8px!important;
    margin-bottom:9px!important;
  }

  .ke-shop-filter{
    padding:12px!important;
    margin-bottom:12px!important;
  }
}


/* ==========================================================
   v0.9.21 SHOP TOP-ABSTAND
   Nur Shop-/Produktkategorie-Archive: großen Leerraum unter Header entfernen
   ========================================================== */

body.woocommerce-shop #content,
body.tax-product_cat #content{
  padding-top:0!important;
}

body.woocommerce-shop .site-content,
body.tax-product_cat .site-content{
  padding-top:0!important;
  margin-top:0!important;
}

body.woocommerce-shop .ast-container,
body.tax-product_cat .ast-container{
  padding-top:0!important;
}

body.woocommerce-shop main.site-main,
body.tax-product_cat main.site-main{
  margin-top:0!important;
  padding-top:26px!important;
}

body.woocommerce-shop .woocommerce-breadcrumb,
body.tax-product_cat .woocommerce-breadcrumb{
  margin-top:0!important;
}

@media(max-width:760px){
  body.woocommerce-shop main.site-main,
  body.tax-product_cat main.site-main{
    padding-top:16px!important;
  }
}


/* ==========================================================
   v0.9.22 SHOP NOCH KOMPAKTER
   Weniger Luft zwischen Header, Breadcrumb und Hero
   ========================================================== */

body.woocommerce-shop main.site-main,
body.tax-product_cat main.site-main{
  padding-top:10px!important;
}

body.woocommerce-shop .woocommerce-breadcrumb,
body.tax-product_cat .woocommerce-breadcrumb{
  margin-top:0!important;
  margin-bottom:8px!important;
}

body.woocommerce-shop .woocommerce-products-header,
body.tax-product_cat .woocommerce-products-header{
  margin-top:0!important;
  margin-bottom:10px!important;
  padding-top:16px!important;
  padding-bottom:16px!important;
}

.ke-shop-quicknav{
  margin-bottom:8px!important;
}

.ke-shop-filter{
  margin-bottom:10px!important;
}

@media(max-width:760px){
  body.woocommerce-shop main.site-main,
  body.tax-product_cat main.site-main{
    padding-top:8px!important;
  }

  body.woocommerce-shop .woocommerce-breadcrumb,
  body.tax-product_cat .woocommerce-breadcrumb{
    margin-bottom:6px!important;
  }

  body.woocommerce-shop .woocommerce-products-header,
  body.tax-product_cat .woocommerce-products-header{
    padding-top:14px!important;
    padding-bottom:14px!important;
    margin-bottom:8px!important;
  }
}


/* ==========================================================
   v0.9.23 SCHNELLZUGRIFF KLARER
   Größer, besser lesbar, stärkerer Kontrast.
   ========================================================== */
.ke-shop-quicknav{
  gap:14px!important;
  padding:10px 12px!important;
  border-radius:16px!important;
  background:#f5f7fa!important;
  border:1px solid #dfe4ea!important;
}

.ke-shop-quicknav__label{
  font-size:11px!important;
  letter-spacing:.06em!important;
  color:#4b5563!important;
}

.ke-shop-quicknav__items{
  gap:9px!important;
}

.ke-shop-quicknav__item{
  min-height:38px!important;
  padding:10px 15px!important;
  border:1px solid #d7dde5!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#111827!important;
  font-size:12px!important;
  font-weight:900!important;
  box-shadow:0 2px 8px rgba(11,16,32,.04)!important;
}

.ke-shop-quicknav__item:hover,
.ke-shop-quicknav__item.is-active{
  border-color:#0b1020!important;
  background:#0b1020!important;
  color:#fff!important;
  box-shadow:0 4px 12px rgba(11,16,32,.12)!important;
}

@media(max-width:760px){
  .ke-shop-quicknav{
    padding:10px!important;
  }
  .ke-shop-quicknav__item{
    min-height:36px!important;
    padding:9px 13px!important;
    font-size:11px!important;
  }
}


/* ==========================================================
   v0.9.24 SHOP TOOLBAR
   Ergebniszahl + Produkte pro Seite + Sortierung in einer Zeile
   ========================================================== */
.ke-shop-toolbar{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
  margin:0 0 14px!important;
  padding:8px 10px!important;
  border:1px solid #e6e9ee!important;
  border-radius:14px!important;
  background:#fafbfc!important;
  box-sizing:border-box!important;
  clear:both!important;
}

.ke-shop-toolbar__left,
.ke-shop-toolbar__right{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
}

.ke-shop-toolbar .woocommerce-result-count,
.ke-shop-toolbar .woocommerce-ordering,
.ke-shop-toolbar .ke-per-page{
  float:none!important;
  width:auto!important;
  min-height:40px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
}

.ke-shop-toolbar .woocommerce-result-count{
  color:#596273!important;
  font-size:11px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
}

.ke-shop-toolbar .ke-per-page{
  gap:7px!important;
}

.ke-shop-toolbar .ke-per-page label{
  font-size:10px!important;
  color:#6b7280!important;
}

.ke-shop-toolbar .ke-per-page select{
  width:74px!important;
  min-width:74px!important;
  height:40px!important;
}

.ke-shop-toolbar .woocommerce-ordering select{
  min-width:240px!important;
  height:40px!important;
  margin:0!important;
}

@media(max-width:760px){
  .ke-shop-toolbar{
    align-items:stretch!important;
    flex-direction:column!important;
    gap:8px!important;
    padding:9px!important;
  }

  .ke-shop-toolbar__left,
  .ke-shop-toolbar__right{
    width:100%!important;
  }

  .ke-shop-toolbar__right{
    justify-content:space-between!important;
  }

  .ke-shop-toolbar .woocommerce-ordering{
    flex:1 1 auto!important;
  }

  .ke-shop-toolbar .woocommerce-ordering select{
    width:100%!important;
    min-width:0!important;
  }
}


/* ==========================================================
   v0.9.25 PRODUKTKARTEN FEINSCHLIFF
   Ruhigere Karten, klarere Titel/Preise, ohne Layout-Umbau
   ========================================================== */

.woocommerce ul.products li.product{
  border-radius:18px!important;
  overflow:hidden!important;
}

.woocommerce ul.products li.product .astra-shop-summary-wrap{
  padding-left:14px!important;
  padding-right:14px!important;
  padding-bottom:14px!important;
}

/* Titel besser lesbar, aber ohne starre Kartenhöhen */
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  margin-top:6px!important;
  margin-bottom:8px!important;
  font-size:15px!important;
  line-height:1.25!important;
  font-weight:900!important;
  color:#0b1020!important;
}

/* Preis etwas klarer hervorheben */
.woocommerce ul.products li.product .price{
  margin:6px 0 8px!important;
  font-size:16px!important;
  line-height:1.1!important;
  font-weight:900!important;
  color:#0b1020!important;
}

/* Zusatzinfos ruhiger */
.woocommerce ul.products li.product .ast-woo-product-category,
.woocommerce ul.products li.product .product-category{
  margin-bottom:4px!important;
  font-size:11px!important;
  line-height:1.2!important;
  color:#89919e!important;
}

/* Produktdaten-Chips etwas gleichmäßiger */
.woocommerce ul.products li.product .ke-product-facts--loop{
  gap:5px!important;
  margin-top:4px!important;
  margin-bottom:8px!important;
}

.woocommerce ul.products li.product .ke-product-facts--loop .ke-product-fact{
  padding:5px 8px!important;
}

/* Buttons optisch konsistent, ohne Flex-Höhen der Karte anzufassen */
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product a.added_to_cart{
  min-height:44px!important;
  width:100%!important;
  margin-top:8px!important;
  padding:10px 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  font-size:12px!important;
  line-height:1.1!important;
  font-weight:900!important;
  box-sizing:border-box!important;
}

/* Hover nur leicht, damit es hochwertig bleibt */
.woocommerce ul.products li.product{
  transition:transform .16s ease, box-shadow .16s ease!important;
}
.woocommerce ul.products li.product:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 12px 28px rgba(11,16,32,.08)!important;
}

/* Badge-Position etwas ruhiger */
.woocommerce ul.products li.product .ke-product-badges{
  top:12px!important;
  left:12px!important;
  right:12px!important;
}

@media(max-width:760px){
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:14px!important;
  }
  .woocommerce ul.products li.product .price{
    font-size:15px!important;
  }
}


/* ==========================================================
   v0.9.26 WARENKORB & KASSE
   Klarere Abholung, ruhigere Formulare, bessere Lesbarkeit
   ========================================================== */

.ke-cart-pickup-notice{
  display:flex!important;
  align-items:flex-start!important;
  gap:12px!important;
  margin:0 0 18px!important;
  padding:14px 16px!important;
  border:1px solid #dfe5ec!important;
  border-radius:16px!important;
  background:#f8fafc!important;
  color:#1f2937!important;
}

.ke-cart-pickup-notice__icon{
  flex:0 0 30px!important;
  width:30px!important;
  height:30px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  background:#0b1020!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:900!important;
}

.ke-cart-pickup-notice__text{
  min-width:0!important;
}

.ke-cart-pickup-notice__text strong,
.ke-cart-pickup-notice__text span{
  display:block!important;
}

.ke-cart-pickup-notice__text strong{
  margin-bottom:3px!important;
  color:#0b1020!important;
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:900!important;
}

.ke-cart-pickup-notice__text span{
  color:#5f6875!important;
  font-size:12px!important;
  line-height:1.45!important;
}

/* Warenkorb */
.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .cart-collaterals .cart_totals{
  border:1px solid #e5e9ef!important;
  border-radius:18px!important;
  background:#fff!important;
  overflow:hidden!important;
  box-shadow:0 8px 24px rgba(11,16,32,.04)!important;
}

.woocommerce-cart table.shop_table{
  border:0!important;
  margin:0!important;
}

.woocommerce-cart table.shop_table th{
  background:#f7f8fa!important;
  color:#5f6875!important;
  font-size:10px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}

.woocommerce-cart table.shop_table td{
  vertical-align:middle!important;
}

.woocommerce-cart .cart_totals{
  padding:18px!important;
}

.woocommerce-cart .cart_totals h2{
  margin-top:0!important;
  font-size:22px!important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  min-height:50px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  font-weight:900!important;
}

/* Kasse */
.woocommerce-checkout form.checkout{
  margin-top:10px!important;
}

.woocommerce-checkout .col2-set,
.woocommerce-checkout #order_review{
  border:1px solid #e5e9ef!important;
  border-radius:18px!important;
  background:#fff!important;
  padding:18px!important;
  box-shadow:0 8px 24px rgba(11,16,32,.04)!important;
}

.woocommerce-checkout h3{
  color:#0b1020!important;
  font-weight:900!important;
}

.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea,
.woocommerce-checkout select{
  min-height:44px!important;
  border:1px solid #dfe4ea!important;
  border-radius:12px!important;
  background:#fafbfc!important;
  box-shadow:none!important;
}

.woocommerce-checkout textarea{
  min-height:96px!important;
  padding-top:10px!important;
}

.woocommerce-checkout #place_order{
  min-height:50px!important;
  width:100%!important;
  border-radius:999px!important;
  font-weight:900!important;
}

@media(max-width:760px){
  .ke-cart-pickup-notice{
    padding:12px!important;
  }

  .woocommerce-checkout .col2-set,
  .woocommerce-checkout #order_review{
    padding:14px!important;
    border-radius:15px!important;
  }
}


/* ==========================================================
   v0.9.27 MEIN KONTO
   Login, Navigation und Kundenkonto ruhiger und klarer
   ========================================================== */

.woocommerce-account .woocommerce{
  margin-top:14px!important;
}

.woocommerce-account .woocommerce-MyAccount-navigation{
  width:24%!important;
  padding:12px!important;
  border:1px solid #e5e9ef!important;
  border-radius:18px!important;
  background:#f8fafc!important;
  box-sizing:border-box!important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li{
  margin:0 0 5px!important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li:last-child{
  margin-bottom:0!important;
}

.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:block!important;
  padding:10px 12px!important;
  border-radius:12px!important;
  color:#1f2937!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:800!important;
  text-decoration:none!important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
  background:#0b1020!important;
  color:#fff!important;
}

.woocommerce-account .woocommerce-MyAccount-content{
  width:73%!important;
  padding:18px!important;
  border:1px solid #e5e9ef!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(11,16,32,.04)!important;
  box-sizing:border-box!important;
}

.ke-account-intro{
  margin:0 0 16px!important;
  padding:14px 16px!important;
  border:1px solid #e5e9ef!important;
  border-radius:14px!important;
  background:#f8fafc!important;
}

.ke-account-intro__text strong,
.ke-account-intro__text span{
  display:block!important;
}

.ke-account-intro__text strong{
  margin-bottom:3px!important;
  color:#0b1020!important;
  font-size:16px!important;
  line-height:1.2!important;
  font-weight:900!important;
}

.ke-account-intro__text span{
  color:#687180!important;
  font-size:12px!important;
  line-height:1.4!important;
}

.woocommerce-account table.shop_table{
  border:1px solid #e5e9ef!important;
  border-radius:14px!important;
  overflow:hidden!important;
}

.woocommerce-account table.shop_table th{
  background:#f7f8fa!important;
  font-size:10px!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}

.woocommerce-account .woocommerce-Address{
  padding:14px!important;
  border:1px solid #e5e9ef!important;
  border-radius:14px!important;
  background:#fafbfc!important;
}

.woocommerce-account input.input-text,
.woocommerce-account input[type="password"],
.woocommerce-account input[type="email"],
.woocommerce-account select{
  min-height:44px!important;
  border:1px solid #dfe4ea!important;
  border-radius:12px!important;
  background:#fafbfc!important;
  box-shadow:none!important;
}

.woocommerce-account button.button,
.woocommerce-account a.button{
  min-height:42px!important;
  padding:10px 16px!important;
  border-radius:999px!important;
  font-weight:900!important;
}

/* Login / Registrierung */
.woocommerce-account:not(.logged-in) #customer_login{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
}

.woocommerce-account:not(.logged-in) #customer_login > .u-column1,
.woocommerce-account:not(.logged-in) #customer_login > .u-column2{
  width:auto!important;
  float:none!important;
  padding:18px!important;
  border:1px solid #e5e9ef!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(11,16,32,.04)!important;
}

@media(max-width:760px){
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .woocommerce-MyAccount-content{
    width:100%!important;
    float:none!important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation{
    margin-bottom:12px!important;
  }

  .woocommerce-account:not(.logged-in) #customer_login{
    grid-template-columns:1fr!important;
  }
}


/* ==========================================================
   v0.9.28 PRODUKT-SERVICEBOX
   Kaufrelevante Hinweise kompakt direkt auf der Produktseite.
   ========================================================== */
.ke-product-servicebox{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  margin:14px 0 16px!important;
}

.ke-product-servicebox__item{
  min-width:0!important;
  padding:11px 12px!important;
  border:1px solid #e5e9ef!important;
  border-radius:14px!important;
  background:#fafbfc!important;
}

.ke-product-servicebox__item strong,
.ke-product-servicebox__item span{
  display:block!important;
}

.ke-product-servicebox__item strong{
  margin-bottom:4px!important;
  color:#0b1020!important;
  font-size:11px!important;
  line-height:1.15!important;
  font-weight:900!important;
}

.ke-product-servicebox__item span{
  color:#687180!important;
  font-size:10px!important;
  line-height:1.4!important;
}

@media(max-width:760px){
  .ke-product-servicebox{
    grid-template-columns:1fr!important;
  }
}


/* ==========================================================
   v0.9.29 BESTELLBESTÄTIGUNG
   Ruhige, klare Thank-you-Seite nach erfolgreicher Bestellung
   ========================================================== */
.ke-thankyou-panel{
  margin:16px 0 22px!important;
  padding:18px!important;
  border:1px solid #e4e8ee!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(11,16,32,.04)!important;
}

.ke-thankyou-panel__head{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin-bottom:14px!important;
}

.ke-thankyou-panel__check{
  flex:0 0 36px!important;
  width:36px!important;
  height:36px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  background:#166534!important;
  color:#fff!important;
  font-size:17px!important;
  font-weight:900!important;
}

.ke-thankyou-panel__head strong,
.ke-thankyou-panel__head span{
  display:block!important;
}

.ke-thankyou-panel__head strong{
  color:#0b1020!important;
  font-size:18px!important;
  line-height:1.15!important;
  font-weight:900!important;
}

.ke-thankyou-panel__head span{
  margin-top:3px!important;
  color:#6b7280!important;
  font-size:12px!important;
  line-height:1.4!important;
}

.ke-thankyou-panel__grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
}

.ke-thankyou-panel__item{
  padding:12px!important;
  border:1px solid #e7ebf0!important;
  border-radius:14px!important;
  background:#f8fafc!important;
}

.ke-thankyou-panel__item strong,
.ke-thankyou-panel__item span{
  display:block!important;
}

.ke-thankyou-panel__item strong{
  margin-bottom:4px!important;
  color:#111827!important;
  font-size:10px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}

.ke-thankyou-panel__item span{
  color:#596273!important;
  font-size:12px!important;
  line-height:1.4!important;
}

.woocommerce-order-received .woocommerce-order-overview{
  padding:14px!important;
  border:1px solid #e7ebf0!important;
  border-radius:14px!important;
  background:#fafbfc!important;
}

@media(max-width:760px){
  .ke-thankyou-panel__grid{
    grid-template-columns:1fr!important;
  }
}


/* ==========================================================
   v0.9.30 WARENKORB-FLOW
   Weiter einkaufen + sinnvoller leerer Warenkorb
   ========================================================== */
.woocommerce-cart .ke-continue-shopping{
  float:left!important;
  min-height:42px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:10px 16px!important;
  border-radius:999px!important;
  background:#f3f5f8!important;
  color:#111827!important;
  font-size:11px!important;
  font-weight:900!important;
}

.woocommerce-cart .ke-continue-shopping:hover{
  background:#0b1020!important;
  color:#fff!important;
}

.ke-empty-cart-box{
  margin:18px 0!important;
  padding:18px!important;
  border:1px solid #e5e9ef!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(11,16,32,.04)!important;
  text-align:left!important;
}

.ke-empty-cart-box > strong,
.ke-empty-cart-box > span{
  display:block!important;
}

.ke-empty-cart-box > strong{
  color:#0b1020!important;
  font-size:18px!important;
  line-height:1.15!important;
  font-weight:900!important;
}

.ke-empty-cart-box > span{
  margin-top:4px!important;
  color:#687180!important;
  font-size:12px!important;
  line-height:1.4!important;
}

.ke-empty-cart-links{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin-top:14px!important;
}

.ke-empty-cart-links a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:9px 13px!important;
  border:1px solid #dfe4ea!important;
  border-radius:999px!important;
  background:#f8fafc!important;
  color:#1f2937!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:900!important;
  text-decoration:none!important;
}

.ke-empty-cart-links a:hover,
.ke-empty-cart-links .ke-empty-cart-primary{
  border-color:#0b1020!important;
  background:#0b1020!important;
  color:#fff!important;
}

@media(max-width:760px){
  .woocommerce-cart .ke-continue-shopping{
    float:none!important;
    width:100%!important;
    margin-bottom:8px!important;
  }

  .ke-empty-cart-links a{
    flex:1 1 46%!important;
  }
}


/* ==========================================================
   v0.9.31 SUCHE / KEINE TREFFER
   Hilfreiche nächste Schritte statt leerer Ergebnisseite
   ========================================================== */
.ke-no-results{
  margin:16px 0 24px!important;
  padding:18px!important;
  border:1px solid #e5e9ef!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(11,16,32,.04)!important;
}

.ke-no-results > strong,
.ke-no-results > span{
  display:block!important;
}

.ke-no-results > strong{
  color:#0b1020!important;
  font-size:18px!important;
  line-height:1.15!important;
  font-weight:900!important;
}

.ke-no-results > span{
  margin-top:4px!important;
  color:#687180!important;
  font-size:12px!important;
  line-height:1.45!important;
}

.ke-no-results__actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin-top:14px!important;
}

.ke-no-results__actions a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:9px 13px!important;
  border:1px solid #dfe4ea!important;
  border-radius:999px!important;
  background:#f8fafc!important;
  color:#1f2937!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:900!important;
  text-decoration:none!important;
}

.ke-no-results__actions a:hover,
.ke-no-results__actions .ke-no-results__primary{
  border-color:#0b1020!important;
  background:#0b1020!important;
  color:#fff!important;
}

@media(max-width:760px){
  .ke-no-results__actions a{
    flex:1 1 46%!important;
  }
}


/* ==========================================================
   v0.9.32 KATEGORIE- & HERSTELLERSEITEN
   Einheitliche Archive + kontextbezogene Navigation
   ========================================================== */

/* Beschreibungen in Kategorie-/Herstellerköpfen lesbarer */
.tax-product_cat .woocommerce-products-header .term-description{
  max-width:820px!important;
  margin-top:8px!important;
  color:rgba(255,255,255,.78)!important;
  font-size:12px!important;
  line-height:1.55!important;
}

.tax-product_cat .woocommerce-products-header .term-description p{
  margin:0!important;
}

/* Unterkategorien bzw. weitere Hersteller direkt unter dem Kopf */
.ke-archive-context{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  margin:0 0 12px!important;
  padding:10px 12px!important;
  border:1px solid #e2e7ed!important;
  border-radius:16px!important;
  background:#f8fafc!important;
  box-sizing:border-box!important;
}

.ke-archive-context__label{
  flex:0 0 auto!important;
  color:#687180!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}

.ke-archive-context__items{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  min-width:0!important;
}

.ke-archive-context__item{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  padding:8px 12px!important;
  border:1px solid #d9e0e7!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#172033!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:900!important;
  text-decoration:none!important;
  transition:background .15s ease,border-color .15s ease,color .15s ease!important;
}

.ke-archive-context__item:hover,
.ke-archive-context__item.is-active{
  border-color:#0b1020!important;
  background:#0b1020!important;
  color:#fff!important;
}

@media(max-width:760px){
  .ke-archive-context{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:8px!important;
  }

  .ke-archive-context__items{
    width:100%!important;
  }

  .ke-archive-context__item{
    flex:1 1 auto!important;
  }
}


/* ==========================================================
   v0.9.33 SHOP-SEITENNAVIGATION
   Pagination klarer, größer und mobil besser bedienbar
   ========================================================== */

.woocommerce nav.woocommerce-pagination{
  margin:22px 0 8px!important;
  text-align:center!important;
}

.woocommerce nav.woocommerce-pagination ul{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin:0!important;
  padding:8px!important;
  border:1px solid #e4e8ee!important;
  border-radius:16px!important;
  background:#f8fafc!important;
  box-shadow:none!important;
}

.woocommerce nav.woocommerce-pagination ul li{
  float:none!important;
  margin:0!important;
  border:0!important;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  min-width:38px!important;
  min-height:38px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:8px 11px!important;
  border:1px solid #dfe4ea!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#172033!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:900!important;
  text-decoration:none!important;
  box-sizing:border-box!important;
}

.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current{
  border-color:#0b1020!important;
  background:#0b1020!important;
  color:#fff!important;
}

.woocommerce nav.woocommerce-pagination ul li a.prev,
.woocommerce nav.woocommerce-pagination ul li a.next{
  min-width:44px!important;
  padding-left:14px!important;
  padding-right:14px!important;
}

@media(max-width:760px){
  .woocommerce nav.woocommerce-pagination ul{
    width:100%!important;
    gap:6px!important;
    padding:7px!important;
    box-sizing:border-box!important;
  }

  .woocommerce nav.woocommerce-pagination ul li a,
  .woocommerce nav.woocommerce-pagination ul li span{
    min-width:36px!important;
    min-height:36px!important;
    padding:7px 9px!important;
  }
}


/* ==========================================================
   v0.9.34 BREADCRUMBS & KATEGORIEKARTEN
   Orientierung im Shop klarer, Woo-Unterkategorien einheitlich
   ========================================================== */

/* Breadcrumbs im Shop kompakt und gut lesbar */
.woocommerce .woocommerce-breadcrumb,
.woocommerce-page .woocommerce-breadcrumb{
  margin:0 0 10px!important;
  color:#7a8492!important;
  font-size:11px!important;
  line-height:1.35!important;
}

.woocommerce .woocommerce-breadcrumb a,
.woocommerce-page .woocommerce-breadcrumb a{
  color:#3d4858!important;
  font-weight:800!important;
  text-decoration:none!important;
}

.woocommerce .woocommerce-breadcrumb a:hover,
.woocommerce-page .woocommerce-breadcrumb a:hover{
  color:#0b1020!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}

/* WooCommerce-Unterkategorien, falls sie im Produktgrid ausgegeben werden */
.woocommerce ul.products li.product-category{
  padding:10px!important;
  border:1px solid #e5e9ef!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(11,16,32,.04)!important;
  overflow:hidden!important;
  transition:transform .16s ease,box-shadow .16s ease!important;
}

.woocommerce ul.products li.product-category:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 12px 28px rgba(11,16,32,.08)!important;
}

.woocommerce ul.products li.product-category a{
  display:block!important;
  text-decoration:none!important;
}

.woocommerce ul.products li.product-category img{
  width:100%!important;
  aspect-ratio:4/3!important;
  object-fit:contain!important;
  margin:0 0 10px!important;
  padding:8px!important;
  border-radius:13px!important;
  background:#f8fafc!important;
}

.woocommerce ul.products li.product-category .woocommerce-loop-category__title{
  margin:0!important;
  padding:4px 4px 7px!important;
  color:#0b1020!important;
  font-size:14px!important;
  line-height:1.25!important;
  font-weight:900!important;
}

.woocommerce ul.products li.product-category .count{
  display:inline-flex!important;
  align-items:center!important;
  min-height:22px!important;
  margin-left:4px!important;
  padding:3px 7px!important;
  border-radius:999px!important;
  background:#eef1f5!important;
  color:#677180!important;
  font-size:9px!important;
  font-weight:900!important;
}

@media(max-width:760px){
  .woocommerce .woocommerce-breadcrumb,
  .woocommerce-page .woocommerce-breadcrumb{
    font-size:10px!important;
    overflow-wrap:anywhere!important;
  }

  .woocommerce ul.products li.product-category .woocommerce-loop-category__title{
    font-size:13px!important;
  }
}


/* ==========================================================
   v0.9.35 WOOCOMMERCE-MELDUNGEN
   Erfolg, Hinweis und Fehler im gesamten Shop einheitlich
   ========================================================== */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error{
  position:relative!important;
  margin:0 0 16px!important;
  padding:14px 16px 14px 48px!important;
  border:1px solid #e3e8ee!important;
  border-radius:16px!important;
  background:#fff!important;
  color:#303846!important;
  font-size:12px!important;
  line-height:1.45!important;
  box-shadow:0 8px 22px rgba(11,16,32,.04)!important;
}

.woocommerce-message:before,
.woocommerce-info:before,
.woocommerce-error:before{
  position:absolute!important;
  top:13px!important;
  left:14px!important;
  width:24px!important;
  height:24px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:900!important;
}

/* Erfolgreiche Aktion */
.woocommerce-message{
  border-left:4px solid #16803c!important;
}
.woocommerce-message:before{
  content:"✓"!important;
  background:#16803c!important;
}

/* Allgemeiner Hinweis */
.woocommerce-info{
  border-left:4px solid #1d5f9f!important;
}
.woocommerce-info:before{
  content:"i"!important;
  background:#1d5f9f!important;
  font-family:Arial,sans-serif!important;
}

/* Fehler */
.woocommerce-error{
  border-left:4px solid #b42318!important;
}
.woocommerce-error:before{
  content:"!"!important;
  background:#b42318!important;
}

/* Woo-Standard-Oberkante entfernen */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error{
  border-top-color:#e3e8ee!important;
}

/* Buttons in Meldungen */
.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button{
  float:none!important;
  min-height:34px!important;
  margin:0 0 0 10px!important;
  padding:8px 12px!important;
  border-radius:999px!important;
  background:#0b1020!important;
  color:#fff!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:900!important;
}

/* Fehlerlisten nicht mit unnötigen Abständen */
.woocommerce-error li{
  margin:0!important;
  padding:0!important;
}

@media(max-width:760px){
  .woocommerce-message,
  .woocommerce-info,
  .woocommerce-error{
    padding:13px 13px 13px 44px!important;
    font-size:11px!important;
  }

  .woocommerce-message .button,
  .woocommerce-info .button,
  .woocommerce-error .button{
    display:inline-flex!important;
    margin:8px 0 0!important;
  }
}


/* ==========================================================
   v0.9.36 MENGE & KAUFBEREICH
   Mengenfelder und Kaufbereich auf Produktseite/Warenkorb klarer
   ========================================================== */

/* Mengenfeld allgemein */
.woocommerce .quantity{
  display:inline-flex!important;
  align-items:center!important;
  min-height:44px!important;
  margin:0 8px 0 0!important;
}

.woocommerce .quantity .qty{
  width:72px!important;
  min-height:44px!important;
  padding:8px 10px!important;
  border:1px solid #d9e0e7!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#111827!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:900!important;
  text-align:center!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
}

/* Produktseite: Menge + Warenkorbbutton wirken wie eine Einheit */
.single-product form.cart{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin-top:14px!important;
  margin-bottom:14px!important;
}

.single-product form.cart .quantity{
  margin:0!important;
}

.single-product form.cart .single_add_to_cart_button{
  min-height:44px!important;
  padding:10px 18px!important;
  border-radius:999px!important;
  font-size:12px!important;
  line-height:1.1!important;
  font-weight:900!important;
}

/* Variantenprodukte: Auswahlfelder gleichmäßig */
.single-product form.variations_form table.variations{
  margin:10px 0 14px!important;
}

.single-product form.variations_form table.variations td{
  padding:5px 8px 5px 0!important;
  vertical-align:middle!important;
}

.single-product form.variations_form table.variations label{
  color:#394454!important;
  font-size:11px!important;
  font-weight:900!important;
}

.single-product form.variations_form table.variations select{
  min-height:42px!important;
  padding:8px 12px!important;
  border:1px solid #dfe4ea!important;
  border-radius:12px!important;
  background:#fafbfc!important;
  color:#172033!important;
}

/* Warenkorb-Mengenfeld kompakter */
.woocommerce-cart table.shop_table .quantity{
  margin:0!important;
}

.woocommerce-cart table.shop_table .quantity .qty{
  width:66px!important;
  min-height:40px!important;
}

/* Deaktivierter Kaufbutton soll klar erkennbar bleiben */
.single-product form.cart .single_add_to_cart_button.disabled,
.single-product form.cart .single_add_to_cart_button:disabled{
  opacity:.48!important;
  cursor:not-allowed!important;
}

@media(max-width:760px){
  .single-product form.cart{
    align-items:stretch!important;
  }

  .single-product form.cart .quantity{
    flex:0 0 78px!important;
  }

  .single-product form.cart .quantity .qty{
    width:78px!important;
  }

  .single-product form.cart .single_add_to_cart_button{
    flex:1 1 180px!important;
  }
}


/* ==========================================================
   v0.9.37 PRODUKTTABS & BESCHREIBUNG
   Beschreibung, Zusatzinfos und Bewertungen klarer gegliedert
   ========================================================== */

.single-product .woocommerce-tabs{
  margin-top:26px!important;
  padding-top:0!important;
}

.single-product .woocommerce-tabs ul.tabs{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0 0 12px!important;
  padding:0!important;
  border:0!important;
}

.single-product .woocommerce-tabs ul.tabs:before,
.single-product .woocommerce-tabs ul.tabs li:before,
.single-product .woocommerce-tabs ul.tabs li:after{
  display:none!important;
}

.single-product .woocommerce-tabs ul.tabs li{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
}

.single-product .woocommerce-tabs ul.tabs li a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:9px 14px!important;
  border:1px solid #dfe4ea!important;
  border-radius:999px!important;
  background:#f8fafc!important;
  color:#394454!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:900!important;
  text-decoration:none!important;
}

.single-product .woocommerce-tabs ul.tabs li.active a,
.single-product .woocommerce-tabs ul.tabs li a:hover{
  border-color:#0b1020!important;
  background:#0b1020!important;
  color:#fff!important;
}

.single-product .woocommerce-tabs .panel{
  margin:0!important;
  padding:18px!important;
  border:1px solid #e5e9ef!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(11,16,32,.04)!important;
}

.single-product .woocommerce-tabs .panel h2:first-child{
  margin-top:0!important;
}

.single-product .woocommerce-tabs .panel h2{
  color:#0b1020!important;
  font-size:20px!important;
  line-height:1.2!important;
  font-weight:900!important;
}

.single-product .woocommerce-tabs .panel p,
.single-product .woocommerce-tabs .panel li{
  color:#4f5a68!important;
  font-size:13px!important;
  line-height:1.65!important;
}

.single-product .woocommerce-product-attributes{
  border-collapse:separate!important;
  border-spacing:0!important;
  overflow:hidden!important;
  border:1px solid #e5e9ef!important;
  border-radius:14px!important;
}

.single-product .woocommerce-product-attributes th,
.single-product .woocommerce-product-attributes td{
  padding:10px 12px!important;
  border-bottom:1px solid #edf0f3!important;
  font-size:12px!important;
}

.single-product .woocommerce-product-attributes th{
  width:34%!important;
  background:#f8fafc!important;
  color:#374151!important;
  font-weight:900!important;
}

.single-product .woocommerce-product-attributes tr:last-child th,
.single-product .woocommerce-product-attributes tr:last-child td{
  border-bottom:0!important;
}

/* Bewertungen etwas ruhiger */
.single-product #reviews #comments ol.commentlist{
  margin:0!important;
  padding:0!important;
}

.single-product #reviews #comments ol.commentlist li{
  margin-bottom:12px!important;
  padding:12px!important;
  border:1px solid #e5e9ef!important;
  border-radius:14px!important;
  background:#fafbfc!important;
}

.single-product #review_form_wrapper{
  margin-top:16px!important;
  padding-top:16px!important;
  border-top:1px solid #e7ebf0!important;
}

@media(max-width:760px){
  .single-product .woocommerce-tabs ul.tabs{
    gap:6px!important;
  }

  .single-product .woocommerce-tabs ul.tabs li a{
    min-height:36px!important;
    padding:8px 12px!important;
    font-size:10px!important;
  }

  .single-product .woocommerce-tabs .panel{
    padding:14px!important;
  }

  .single-product .woocommerce-product-attributes th{
    width:42%!important;
  }
}


/* ==========================================================
   v0.9.38 ÄHNLICHE PRODUKTE & UPSELLS
   Abschluss der Produktseite optisch klarer und einheitlicher
   ========================================================== */

.single-product section.related.products,
.single-product section.up-sells.upsells.products{
  margin-top:28px!important;
  padding-top:20px!important;
  border-top:1px solid #e7ebf0!important;
}

.single-product section.related.products > h2,
.single-product section.up-sells.upsells.products > h2{
  margin:0 0 14px!important;
  color:#0b1020!important;
  font-size:22px!important;
  line-height:1.15!important;
  font-weight:900!important;
}

/* Produktkarten in Empfehlungen etwas kompakter */
.single-product section.related.products ul.products,
.single-product section.up-sells.upsells.products ul.products{
  margin-top:0!important;
  margin-bottom:0!important;
}

.single-product section.related.products ul.products li.product,
.single-product section.up-sells.upsells.products ul.products li.product{
  border:1px solid #e5e9ef!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(11,16,32,.04)!important;
}

.single-product section.related.products ul.products li.product:hover,
.single-product section.up-sells.upsells.products ul.products li.product:hover{
  box-shadow:0 12px 28px rgba(11,16,32,.08)!important;
}

/* Bilder in diesem Bereich ruhig halten, ohne globale Bildlogik anzufassen */
.single-product section.related.products ul.products li.product img,
.single-product section.up-sells.upsells.products ul.products li.product img{
  margin-bottom:8px!important;
  border-radius:14px!important;
}

/* Überschriften und Preise etwas kompakter als im Hauptgrid */
.single-product section.related.products .woocommerce-loop-product__title,
.single-product section.up-sells.upsells.products .woocommerce-loop-product__title{
  font-size:14px!important;
  line-height:1.25!important;
}

.single-product section.related.products .price,
.single-product section.up-sells.upsells.products .price{
  font-size:15px!important;
}

/* CTA in Empfehlungen klar und gleichmäßig */
.single-product section.related.products a.button,
.single-product section.up-sells.upsells.products a.button{
  min-height:42px!important;
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:9px 13px!important;
  border-radius:999px!important;
  font-size:11px!important;
  font-weight:900!important;
}

@media(max-width:760px){
  .single-product section.related.products,
  .single-product section.up-sells.upsells.products{
    margin-top:22px!important;
    padding-top:16px!important;
  }

  .single-product section.related.products > h2,
  .single-product section.up-sells.upsells.products > h2{
    font-size:19px!important;
  }
}


/* ==========================================================
   v0.9.39 PREISE & ANGEBOTE
   Preisgestaltung klarer, ohne Preislogik zu verändern
   ========================================================== */

/* Normalpreis */
.woocommerce ul.products li.product .price,
.single-product div.product p.price,
.single-product div.product span.price{
  color:#0b1020!important;
  font-weight:900!important;
}

/* Alter Preis bei Angeboten bewusst zurücknehmen */
.woocommerce ul.products li.product .price del,
.single-product div.product .price del{
  display:inline-block!important;
  margin-right:6px!important;
  color:#8a93a1!important;
  font-size:.82em!important;
  font-weight:700!important;
  opacity:1!important;
  text-decoration-thickness:1.5px!important;
}

/* Aktueller Angebotspreis */
.woocommerce ul.products li.product .price ins,
.single-product div.product .price ins{
  display:inline-block!important;
  color:#b42365!important;
  font-weight:900!important;
  text-decoration:none!important;
}

/* Von-bis-Preise bei Varianten sauber umbrechen vermeiden */
.woocommerce ul.products li.product .price,
.single-product div.product .price{
  line-height:1.2!important;
}

.single-product div.product .summary p.price,
.single-product div.product .summary span.price{
  margin:8px 0 10px!important;
  font-size:24px!important;
  line-height:1.15!important;
}

/* Steuer-/Versandhinweise direkt unter dem Preis ruhiger */
.single-product .wc-gzd-additional-info,
.woocommerce ul.products li.product .wc-gzd-additional-info{
  color:#7a8492!important;
  font-size:10px!important;
  line-height:1.35!important;
}

.single-product .wc-gzd-additional-info{
  margin-top:4px!important;
  margin-bottom:6px!important;
}

/* Einheitliche Darstellung von "ab"-Preisen und Preisbereichen */
.woocommerce ul.products li.product .price .woocommerce-Price-amount,
.single-product div.product .price .woocommerce-Price-amount{
  white-space:nowrap!important;
}

/* Variable Produkte: gewählte Variante sichtbar, aber nicht überladen */
.single-product .woocommerce-variation-price{
  margin:8px 0!important;
  padding:10px 12px!important;
  border:1px solid #e7ebf0!important;
  border-radius:12px!important;
  background:#f8fafc!important;
}

.single-product .woocommerce-variation-price .price{
  margin:0!important;
  font-size:19px!important;
}

@media(max-width:760px){
  .single-product div.product .summary p.price,
  .single-product div.product .summary span.price{
    font-size:21px!important;
  }
}


/* ==========================================================
   v0.9.40 VERFÜGBARKEIT & STATUS
   Nicht vorrätige Artikel klar kennzeichnen, aber sichtbar lassen
   ========================================================== */

/* Nicht vorrätige Produkte bleiben vollständig sichtbar */
.woocommerce ul.products li.product.outofstock{
  opacity:1!important;
}

/* Bild nur minimal ruhiger, Produkt bleibt SEO-/kundenfreundlich sichtbar */
.woocommerce ul.products li.product.outofstock img{
  opacity:.72!important;
  filter:saturate(.78)!important;
}

/* Status direkt als ruhiger Hinweis */
.woocommerce ul.products li.product.outofstock .ast-shop-product-out-of-stock,
.woocommerce ul.products li.product.outofstock .out-of-stock{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  margin:6px 0!important;
  padding:6px 10px!important;
  border:1px solid #e2e6eb!important;
  border-radius:999px!important;
  background:#f3f5f7!important;
  color:#687180!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:900!important;
}

/* Produktseite: Verfügbarkeit klar, aber nicht alarmistisch */
.single-product .stock{
  display:inline-flex!important;
  align-items:center!important;
  min-height:32px!important;
  margin:6px 0 8px!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:900!important;
}

.single-product .stock.in-stock{
  border:1px solid #cfe7d6!important;
  background:#f1f8f3!important;
  color:#166534!important;
}

.single-product .stock.out-of-stock{
  border:1px solid #e3e7eb!important;
  background:#f4f5f7!important;
  color:#687180!important;
}

/* Bei nicht verfügbarem Produkt Kaufbereich optisch sauber beenden */
.single-product div.product.outofstock form.cart,
.single-product div.product.outofstock .single_add_to_cart_button{
  display:none!important;
}

/* Empfehlungskarten übernehmen denselben Status */
.single-product section.related.products li.product.outofstock,
.single-product section.up-sells.upsells.products li.product.outofstock{
  opacity:1!important;
}

@media(max-width:760px){
  .single-product .stock{
    font-size:10px!important;
  }
}


/* ==========================================================
   v0.9.41 PRODUKT-META & SKU
   Artikelnummer, Kategorie und Metaangaben ruhiger strukturieren
   ========================================================== */

.single-product .product_meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin-top:14px!important;
  padding-top:12px!important;
  border-top:1px solid #e7ebf0!important;
  color:#7a8492!important;
  font-size:10px!important;
  line-height:1.35!important;
}

.single-product .product_meta > span{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:6px 9px!important;
  border:1px solid #e2e7ed!important;
  border-radius:999px!important;
  background:#f8fafc!important;
}

.single-product .product_meta a{
  color:#394454!important;
  font-weight:800!important;
  text-decoration:none!important;
}

.single-product .product_meta a:hover{
  color:#0b1020!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}

.single-product .sku_wrapper .sku{
  color:#172033!important;
  font-weight:900!important;
}

.single-product .posted_in,
.single-product .tagged_as{
  color:#7a8492!important;
}

/* Produktlisten: Meta nicht unnötig dominant */
.woocommerce ul.products li.product .ast-woo-product-category{
  margin-top:2px!important;
  margin-bottom:5px!important;
  color:#8a93a1!important;
  font-size:10px!important;
  line-height:1.2!important;
}

/* Mobile etwas kompakter */
@media(max-width:760px){
  .single-product .product_meta{
    gap:6px!important;
  }

  .single-product .product_meta > span{
    min-height:26px!important;
    padding:5px 8px!important;
  }
}


/* ==========================================================
   v0.9.42 CHECKOUT ZAHLUNG & BESTELLÜBERSICHT
   Zahlungsarten und Order Review klarer und ruhiger
   ========================================================== */

.woocommerce-checkout #order_review_heading{
  margin-top:22px!important;
  margin-bottom:10px!important;
  color:#0b1020!important;
  font-size:21px!important;
  line-height:1.2!important;
  font-weight:900!important;
}

.woocommerce-checkout #order_review table.shop_table{
  margin:0 0 14px!important;
  border:1px solid #e5e9ef!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:#fff!important;
}

.woocommerce-checkout #order_review table.shop_table th{
  background:#f8fafc!important;
  color:#556070!important;
  font-size:10px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}

.woocommerce-checkout #order_review table.shop_table th,
.woocommerce-checkout #order_review table.shop_table td{
  padding:10px 12px!important;
  border-color:#edf0f3!important;
}

.woocommerce-checkout #payment{
  margin-top:12px!important;
  border:1px solid #e5e9ef!important;
  border-radius:16px!important;
  background:#f8fafc!important;
  overflow:hidden!important;
}

.woocommerce-checkout #payment ul.payment_methods{
  margin:0!important;
  padding:10px!important;
  border:0!important;
}

.woocommerce-checkout #payment ul.payment_methods li{
  margin:0 0 8px!important;
  padding:11px 12px!important;
  border:1px solid #e0e5eb!important;
  border-radius:13px!important;
  background:#fff!important;
}

.woocommerce-checkout #payment ul.payment_methods li:last-child{
  margin-bottom:0!important;
}

.woocommerce-checkout #payment ul.payment_methods li label{
  color:#172033!important;
  font-size:12px!important;
  font-weight:900!important;
  cursor:pointer!important;
}

.woocommerce-checkout #payment ul.payment_methods li img{
  max-height:28px!important;
  width:auto!important;
  margin-left:8px!important;
  vertical-align:middle!important;
}

.woocommerce-checkout #payment div.payment_box{
  margin:9px 0 0!important;
  padding:10px 12px!important;
  border-radius:10px!important;
  background:#f3f5f8!important;
  color:#5f6875!important;
  font-size:11px!important;
  line-height:1.45!important;
}

.woocommerce-checkout #payment div.payment_box:before{
  display:none!important;
}

.woocommerce-checkout #payment .place-order{
  margin:0!important;
  padding:12px!important;
  border-top:1px solid #e3e7ec!important;
  background:#fff!important;
}

.woocommerce-checkout #payment .woocommerce-privacy-policy-text{
  margin-bottom:10px!important;
  color:#687180!important;
  font-size:10px!important;
  line-height:1.45!important;
}

.woocommerce-checkout #payment #place_order{
  margin:0!important;
}

@media(max-width:760px){
  .woocommerce-checkout #order_review_heading{
    font-size:19px!important;
  }

  .woocommerce-checkout #payment ul.payment_methods li{
    padding:10px!important;
  }

  .woocommerce-checkout #order_review table.shop_table th,
  .woocommerce-checkout #order_review table.shop_table td{
    padding:9px!important;
  }
}


/* ==========================================================
   v0.9.43 MOBILE FEINSCHLIFF
   Shop, Produktseite, Warenkorb und Checkout auf kleinen Displays
   ========================================================== */

@media(max-width:760px){

  /* Grundabstände etwas kompakter */
  .woocommerce-shop .site-main,
  .tax-product_cat .site-main{
    padding-top:18px!important;
    padding-bottom:44px!important;
  }

  /* Shop-Header nicht unnötig hoch */
  .woocommerce-shop .woocommerce-products-header,
  .tax-product_cat .woocommerce-products-header{
    margin-bottom:16px!important;
    padding:22px 18px!important;
    border-radius:18px!important;
  }

  .woocommerce-shop .woocommerce-products-header__title,
  .tax-product_cat .woocommerce-products-header__title{
    font-size:28px!important;
    line-height:1.08!important;
  }

  /* Filter mobil übersichtlich stapeln */
  .ke-shop-filter__grid{
    grid-template-columns:1fr!important;
    gap:9px!important;
  }

  .ke-shop-filter__head{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:7px!important;
  }

  .ke-shop-filter__reset{
    align-self:flex-start!important;
  }

  .ke-shop-filter select,
  .ke-shop-filter__submit{
    width:100%!important;
    min-height:44px!important;
  }

  /* Schnellzugriff mobil horizontal sinnvoll nutzbar */
  .ke-shop-quicknav__items{
    width:100%!important;
  }

  .ke-shop-quicknav__item{
    flex:1 1 45%!important;
    text-align:center!important;
  }

  /* Produktgrid nicht quetschen */
  .woocommerce ul.products{
    gap:12px!important;
  }

  /* Produktseite */
  .single-product div.product .summary{
    margin-top:14px!important;
  }

  .single-product div.product .product_title{
    font-size:26px!important;
    line-height:1.1!important;
  }

  .single-product .ke-product-servicebox{
    margin-top:12px!important;
  }

  /* Warenkorb */
  .woocommerce-cart .cart-collaterals .cart_totals{
    margin-top:14px!important;
  }

  .woocommerce-cart .cart_totals{
    padding:14px!important;
  }

  /* Checkout-Felder nicht zu eng */
  .woocommerce-checkout .form-row{
    width:100%!important;
    float:none!important;
  }

  .woocommerce-checkout .col2-set .col-1,
  .woocommerce-checkout .col2-set .col-2{
    width:100%!important;
    float:none!important;
  }

  .woocommerce-checkout input.input-text,
  .woocommerce-checkout select,
  .woocommerce-checkout textarea{
    font-size:16px!important; /* verhindert iOS-Zoom */
  }

  /* Konto */
  .woocommerce-account .woocommerce-MyAccount-navigation a{
    min-height:40px!important;
    display:flex!important;
    align-items:center!important;
  }

  /* Meldungen */
  .woocommerce-message .button,
  .woocommerce-info .button,
  .woocommerce-error .button{
    width:auto!important;
    max-width:100%!important;
  }
}


/* ==========================================================
   v0.9.44 FOKUS & BEDIENBARKEIT
   Tastatur, Touch und Formularfokus im Shop klarer
   ========================================================== */

.woocommerce a:focus-visible,
.woocommerce button:focus-visible,
.woocommerce input:focus-visible,
.woocommerce select:focus-visible,
.woocommerce textarea:focus-visible,
.ke-shoptools a:focus-visible,
.ke-shoptools button:focus-visible,
.ke-shoptools input:focus-visible,
.ke-shoptools select:focus-visible,
.ke-shop-filter a:focus-visible,
.ke-shop-filter button:focus-visible,
.ke-shop-filter select:focus-visible{
  outline:3px solid rgba(33,199,217,.48)!important;
  outline-offset:2px!important;
  box-shadow:0 0 0 2px #fff!important;
}

.woocommerce input.input-text:focus,
.woocommerce input[type="email"]:focus,
.woocommerce input[type="password"]:focus,
.woocommerce input[type="tel"]:focus,
.woocommerce input[type="number"]:focus,
.woocommerce select:focus,
.woocommerce textarea:focus{
  border-color:#7f8b9a!important;
  background:#fff!important;
  box-shadow:0 0 0 3px rgba(11,16,32,.06)!important;
}

/* Links in Fließtext nicht nur über Farbe unterscheiden */
.woocommerce-Tabs-panel a,
.woocommerce-privacy-policy-text a,
.woocommerce-account .woocommerce-MyAccount-content p a{
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}

/* Kleine Bedienelemente bekommen sichere Touchfläche */
.ke-active-filter-chip,
.ke-shop-quicknav__item,
.ke-archive-context__item,
.woocommerce nav.woocommerce-pagination a,
.woocommerce nav.woocommerce-pagination span.current{
  touch-action:manipulation!important;
}

/* Weniger Bewegung, wenn Nutzer reduzierte Animation bevorzugt */
@media (prefers-reduced-motion: reduce){
  .woocommerce ul.products li.product,
  .woocommerce ul.products li.product-category,
  .ke-shop-quicknav__item,
  .ke-archive-context__item{
    transition:none!important;
  }

  .woocommerce ul.products li.product:hover,
  .woocommerce ul.products li.product-category:hover{
    transform:none!important;
  }
}


/* ==========================================================
   v0.9.45 CHECKOUT LAYOUT HOTFIX
   Behebt die extrem schmale / langgezogene Desktop-Darstellung
   ========================================================== */
@media(min-width:921px){
  body.woocommerce-checkout .site-content .ast-container,
  body.woocommerce-checkout .site-main,
  body.woocommerce-checkout article,
  body.woocommerce-checkout .entry-content,
  body.woocommerce-checkout .woocommerce{
    width:100%!important;
    max-width:1240px!important;
    box-sizing:border-box!important;
  }
  body.woocommerce-checkout .site-content .ast-container{
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:24px!important;
    padding-right:24px!important;
  }
  body.woocommerce-checkout form.checkout.woocommerce-checkout{
    display:grid!important;
    grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr)!important;
    column-gap:28px!important;
    row-gap:18px!important;
    align-items:start!important;
    width:100%!important;
    max-width:none!important;
  }
  body.woocommerce-checkout form.checkout.woocommerce-checkout > #customer_details{
    grid-column:1!important;
    width:100%!important;
    max-width:none!important;
    float:none!important;
    margin:0!important;
  }
  body.woocommerce-checkout form.checkout.woocommerce-checkout > #order_review_heading{
    grid-column:2!important;
    grid-row:1!important;
    width:100%!important;
    margin:0 0 10px!important;
  }
  body.woocommerce-checkout form.checkout.woocommerce-checkout > #order_review{
    grid-column:2!important;
    grid-row:2 / span 3!important;
    width:100%!important;
    max-width:none!important;
    float:none!important;
    margin:0!important;
    box-sizing:border-box!important;
  }
  body.woocommerce-checkout #customer_details{display:block!important;}
  body.woocommerce-checkout #customer_details .col-1,
  body.woocommerce-checkout #customer_details .col-2{
    width:100%!important;
    max-width:none!important;
    float:none!important;
    margin:0!important;
  }
  body.woocommerce-checkout #customer_details .col-2{margin-top:18px!important;}
  body.woocommerce-checkout #customer_details .woocommerce-billing-fields,
  body.woocommerce-checkout #customer_details .woocommerce-shipping-fields,
  body.woocommerce-checkout #customer_details .woocommerce-additional-fields{
    width:100%!important;
  }
  body.woocommerce-checkout #customer_details .form-row-first,
  body.woocommerce-checkout #customer_details .form-row-last{width:48.5%!important;}
  body.woocommerce-checkout #customer_details .form-row-first{float:left!important;}
  body.woocommerce-checkout #customer_details .form-row-last{float:right!important;}
  body.woocommerce-checkout #customer_details .form-row-wide{
    width:100%!important;
    float:none!important;
    clear:both!important;
  }
  body.woocommerce-checkout #order_review table.shop_table,
  body.woocommerce-checkout #payment{
    width:100%!important;
    max-width:none!important;
  }
}
@media(min-width:761px) and (max-width:920px){
  body.woocommerce-checkout form.checkout.woocommerce-checkout{display:block!important;width:100%!important;}
  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout #order_review_heading{width:100%!important;max-width:none!important;float:none!important;}
}
@media(max-width:760px){
  body.woocommerce-checkout form.checkout.woocommerce-checkout{display:block!important;width:100%!important;}
  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout #order_review_heading{width:100%!important;max-width:none!important;float:none!important;}
}


/* ==========================================================
   v0.9.46 CHECKOUT BREITENKORREKTUR
   Rechte Spalte bleibt zuverlässig neben der linken
   ========================================================== */
@media(min-width:1024px){

  body.woocommerce-checkout .site-content .ast-container{
    max-width:1320px!important;
  }

  body.woocommerce-checkout form.checkout.woocommerce-checkout{
    display:grid!important;
    grid-template-columns:minmax(0, 1.05fr) minmax(420px, .95fr)!important;
    column-gap:24px!important;
    row-gap:16px!important;
    align-items:start!important;
  }

  body.woocommerce-checkout form.checkout.woocommerce-checkout > #customer_details{
    grid-column:1!important;
    grid-row:1 / span 3!important;
    min-width:0!important;
    width:100%!important;
  }

  body.woocommerce-checkout form.checkout.woocommerce-checkout > #order_review_heading{
    grid-column:2!important;
    grid-row:1!important;
    min-width:0!important;
    width:100%!important;
  }

  body.woocommerce-checkout form.checkout.woocommerce-checkout > #order_review{
    grid-column:2!important;
    grid-row:2!important;
    min-width:0!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }

  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout #order_review_heading{
    float:none!important;
  }

  body.woocommerce-checkout #customer_details .col-1,
  body.woocommerce-checkout #customer_details .col-2{
    min-width:0!important;
  }
}

/* Falls der Viewport etwas zu schmal ist, lieber sauber stapeln */
@media(min-width:761px) and (max-width:1023px){
  body.woocommerce-checkout form.checkout.woocommerce-checkout{
    display:block!important;
  }

  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout #order_review_heading{
    width:100%!important;
    max-width:none!important;
    float:none!important;
  }
}


/* ==========================================================
   v0.9.47 CHECKOUT SPALTEN HOTFIX
   Robuste Desktop-Zweispaltenansicht ohne Grid-Abhängigkeit
   ========================================================== */

@media(min-width:1024px){

  body.woocommerce-checkout form.checkout.woocommerce-checkout{
    display:block!important;
    width:100%!important;
    max-width:none!important;
  }

  body.woocommerce-checkout form.checkout.woocommerce-checkout::after{
    content:""!important;
    display:block!important;
    clear:both!important;
  }

  body.woocommerce-checkout #customer_details{
    width:56%!important;
    max-width:none!important;
    float:left!important;
    clear:none!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  body.woocommerce-checkout #order_review_heading{
    width:40%!important;
    max-width:none!important;
    float:right!important;
    clear:none!important;
    margin:0 0 10px!important;
    box-sizing:border-box!important;
  }

  body.woocommerce-checkout #order_review{
    width:40%!important;
    max-width:none!important;
    float:right!important;
    clear:right!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  body.woocommerce-checkout #customer_details .col-1,
  body.woocommerce-checkout #customer_details .col-2{
    width:100%!important;
    max-width:none!important;
    float:none!important;
    clear:both!important;
    margin:0!important;
  }

  body.woocommerce-checkout #customer_details .col-2{
    margin-top:18px!important;
  }

  body.woocommerce-checkout #customer_details .form-row-first,
  body.woocommerce-checkout #customer_details .form-row-last{
    width:48.5%!important;
    clear:none!important;
  }

  body.woocommerce-checkout #customer_details .form-row-first{
    float:left!important;
  }

  body.woocommerce-checkout #customer_details .form-row-last{
    float:right!important;
  }

  body.woocommerce-checkout #customer_details .form-row-wide{
    width:100%!important;
    float:none!important;
    clear:both!important;
  }
}

@media(min-width:761px) and (max-width:1023px){
  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review_heading,
  body.woocommerce-checkout #order_review{
    width:100%!important;
    max-width:none!important;
    float:none!important;
    clear:both!important;
  }
}


/* ==========================================================
   v0.9.48 CHECKOUT DOM-LAYOUT HOTFIX
   Echte linke/rechte Spalte per Wrapper, unabhängig von Woo-Floats
   ========================================================== */

body.woocommerce-checkout .ke-checkout-layout{
  width:100%!important;
  box-sizing:border-box!important;
}

@media(min-width:1024px){
  body.woocommerce-checkout form.checkout.woocommerce-checkout{
    display:block!important;
    width:100%!important;
    max-width:none!important;
  }

  body.woocommerce-checkout .ke-checkout-layout{
    display:grid!important;
    grid-template-columns:minmax(0, 1.15fr) minmax(420px, .85fr)!important;
    gap:24px!important;
    align-items:start!important;
  }

  body.woocommerce-checkout .ke-checkout-layout__left,
  body.woocommerce-checkout .ke-checkout-layout__right{
    min-width:0!important;
    width:100%!important;
  }

  body.woocommerce-checkout .ke-checkout-layout #customer_details,
  body.woocommerce-checkout .ke-checkout-layout #order_review_heading,
  body.woocommerce-checkout .ke-checkout-layout #order_review{
    width:100%!important;
    max-width:none!important;
    float:none!important;
    clear:none!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }

  body.woocommerce-checkout .ke-checkout-layout #order_review_heading{
    margin-top:0!important;
    margin-bottom:10px!important;
  }

  body.woocommerce-checkout .ke-checkout-layout #customer_details .col-1,
  body.woocommerce-checkout .ke-checkout-layout #customer_details .col-2{
    width:100%!important;
    max-width:none!important;
    float:none!important;
    clear:both!important;
  }

  body.woocommerce-checkout .ke-checkout-layout #customer_details .col-2{
    margin-top:18px!important;
  }

  body.woocommerce-checkout .ke-checkout-layout #customer_details .form-row-first,
  body.woocommerce-checkout .ke-checkout-layout #customer_details .form-row-last{
    width:48.5%!important;
    clear:none!important;
  }

  body.woocommerce-checkout .ke-checkout-layout #customer_details .form-row-first{
    float:left!important;
  }

  body.woocommerce-checkout .ke-checkout-layout #customer_details .form-row-last{
    float:right!important;
  }

  body.woocommerce-checkout .ke-checkout-layout #customer_details .form-row-wide{
    width:100%!important;
    float:none!important;
    clear:both!important;
  }
}

@media(max-width:1023px){
  body.woocommerce-checkout .ke-checkout-layout{
    display:block!important;
  }

  body.woocommerce-checkout .ke-checkout-layout__left,
  body.woocommerce-checkout .ke-checkout-layout__right{
    width:100%!important;
  }

  body.woocommerce-checkout .ke-checkout-layout__right{
    margin-top:18px!important;
  }
}


/* ==========================================================
   v0.9.52 MEIN KONTO LAYOUT HOTFIX
   Breite Desktop-Darstellung statt schmaler, versetzter Spalten
   ========================================================== */

body.woocommerce-account .site-content .ast-container,
body.woocommerce-account .site-main,
body.woocommerce-account article,
body.woocommerce-account .entry-content,
body.woocommerce-account .woocommerce{
  width:100%!important;
  max-width:1240px!important;
  box-sizing:border-box!important;
}

body.woocommerce-account .site-content .ast-container{
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:24px!important;
  padding-right:24px!important;
}

body.woocommerce-account .entry-content > .woocommerce{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Eingeloggt: Navigation links, Inhalt rechts */
@media(min-width:921px){
  body.woocommerce-account.logged-in .woocommerce{
    display:grid!important;
    grid-template-columns:250px minmax(0,1fr)!important;
    gap:24px!important;
    align-items:start!important;
  }

  body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation{
    width:100%!important;
    max-width:none!important;
    float:none!important;
    margin:0!important;
    padding:14px!important;
    border-radius:18px!important;
  }

  body.woocommerce-account.logged-in .woocommerce-MyAccount-content{
    width:100%!important;
    max-width:none!important;
    float:none!important;
    margin:0!important;
    padding:22px!important;
    min-width:0!important;
  }

  body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul{
    display:block!important;
  }

  body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation li{
    width:100%!important;
  }
}

/* Login/Registrierung ordentlich breit */
body.woocommerce-account:not(.logged-in) #customer_login{
  width:100%!important;
  max-width:none!important;
}

body.woocommerce-account:not(.logged-in) #customer_login > .u-column1,
body.woocommerce-account:not(.logged-in) #customer_login > .u-column2{
  min-width:0!important;
}

/* Inhalt nicht künstlich zusammendrücken */
body.woocommerce-account .woocommerce-MyAccount-content p,
body.woocommerce-account .woocommerce-MyAccount-content address,
body.woocommerce-account .woocommerce-MyAccount-content table{
  max-width:none!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address{
  width:100%!important;
  float:none!important;
  margin:0!important;
}

/* Mobile sauber stapeln */
@media(max-width:920px){
  body.woocommerce-account.logged-in .woocommerce{
    display:block!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation,
  body.woocommerce-account .woocommerce-MyAccount-content{
    width:100%!important;
    max-width:none!important;
    float:none!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation{
    margin-bottom:14px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses{
    grid-template-columns:1fr!important;
  }
}


/* ==========================================================
   v0.9.53 MEIN KONTO DOM-LAYOUT
   Navigation und Inhalt zuverlässig nebeneinander
   ========================================================== */

body.woocommerce-account .ke-account-layout{
  width:100%!important;
  max-width:1120px!important;
  margin:0 auto!important;
  box-sizing:border-box!important;
}

@media(min-width:921px){
  body.woocommerce-account .ke-account-layout{
    display:grid!important;
    grid-template-columns:240px minmax(0,1fr)!important;
    gap:26px!important;
    align-items:start!important;
  }

  body.woocommerce-account .ke-account-layout .woocommerce-MyAccount-navigation,
  body.woocommerce-account .ke-account-layout .woocommerce-MyAccount-content{
    width:100%!important;
    max-width:none!important;
    float:none!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  body.woocommerce-account .ke-account-layout .woocommerce-MyAccount-navigation{
    position:sticky!important;
    top:22px!important;
  }

  body.woocommerce-account .ke-account-layout .woocommerce-MyAccount-content{
    min-width:0!important;
    padding:22px!important;
  }

  body.woocommerce-account .ke-account-layout .ke-account-intro{
    width:100%!important;
    max-width:none!important;
  }
}

@media(max-width:920px){
  body.woocommerce-account .ke-account-layout{
    display:block!important;
    max-width:none!important;
  }

  body.woocommerce-account .ke-account-layout .woocommerce-MyAccount-navigation,
  body.woocommerce-account .ke-account-layout .woocommerce-MyAccount-content{
    width:100%!important;
    max-width:none!important;
    float:none!important;
  }

  body.woocommerce-account .ke-account-layout .woocommerce-MyAccount-navigation{
    margin-bottom:14px!important;
  }
}

/* Inhalt allgemein etwas ausgewogener */
body.woocommerce-account .woocommerce-MyAccount-content{
  font-size:13px!important;
  line-height:1.55!important;
}

body.woocommerce-account .woocommerce-MyAccount-content > p:first-child{
  margin-top:0!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses{
  margin-top:14px!important;
}


/* ==========================================================
   v0.9.54 MEIN KONTO ÜBERSCHRIFT
   Seitentitel an den Konto-Container anpassen
   ========================================================== */

body.woocommerce-account .entry-header,
body.woocommerce-account .page-header{
  width:100%!important;
  max-width:1120px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

body.woocommerce-account .entry-title,
body.woocommerce-account h1.entry-title{
  margin:18px 0 22px!important;
  color:#0b1020!important;
  font-size:34px!important;
  line-height:1.08!important;
  font-weight:900!important;
  letter-spacing:-.02em!important;
}

@media(max-width:920px){
  body.woocommerce-account .entry-header,
  body.woocommerce-account .page-header{
    max-width:none!important;
  }

  body.woocommerce-account .entry-title,
  body.woocommerce-account h1.entry-title{
    margin:14px 0 16px!important;
    font-size:28px!important;
  }
}


/* ==========================================================
   v0.9.55 KONTO ADRESSEN
   Rechnungs- und Lieferadresse gleichmäßig, ohne Wortumbrüche
   ========================================================== */

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:stretch!important;
  margin-top:16px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address{
  width:100%!important;
  max-width:none!important;
  float:none!important;
  margin:0!important;
  padding:16px!important;
  border:1px solid #e5e9ef!important;
  border-radius:16px!important;
  background:#fafbfc!important;
  box-sizing:border-box!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:0 0 12px!important;
  padding:0 0 10px!important;
  border-bottom:1px solid #e1e5ea!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3{
  margin:0!important;
  min-width:0!important;
  color:#0b1020!important;
  font-size:18px!important;
  line-height:1.15!important;
  font-weight:900!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a{
  flex:0 0 auto!important;
  margin:0!important;
  color:#e31b78!important;
  font-size:11px!important;
  font-weight:800!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a:hover{
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address{
  margin:0!important;
  padding:0!important;
  color:#374151!important;
  font-size:12px!important;
  line-height:1.55!important;
  font-style:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}

@media(max-width:760px){
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses{
    grid-template-columns:1fr!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:6px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3{
    font-size:17px!important;
  }
}


/* ==========================================================
   v0.9.56 KONTO ADRESSEN HOTFIX 2
   Echte Woo-Spalten greifen, Titel und Bearbeiten-Link getrennt
   ========================================================== */

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  width:100%!important;
  margin-top:16px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses::before,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses::after{
  display:none!important;
  content:none!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .u-column1,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .u-column2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .col-1,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .col-2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address{
  width:100%!important;
  max-width:none!important;
  float:none!important;
  clear:none!important;
  margin:0!important;
  box-sizing:border-box!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address{
  padding:16px!important;
  border:1px solid #e5e9ef!important;
  border-radius:16px!important;
  background:#fafbfc!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:16px!important;
  width:100%!important;
  margin:0 0 12px!important;
  padding:0 0 10px!important;
  border-bottom:1px solid #e1e5ea!important;
  box-sizing:border-box!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title::before,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title::after{
  display:none!important;
  content:none!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3{
  grid-column:1!important;
  min-width:0!important;
  width:auto!important;
  margin:0!important;
  float:none!important;
  clear:none!important;
  color:#0b1020!important;
  font-size:18px!important;
  line-height:1.15!important;
  font-weight:900!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a{
  grid-column:2!important;
  justify-self:end!important;
  width:auto!important;
  margin:0!important;
  float:none!important;
  clear:none!important;
  white-space:nowrap!important;
  color:#e31b78!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:800!important;
  text-decoration:none!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address{
  margin:0!important;
  padding:0!important;
  min-height:108px!important;
  color:#374151!important;
  font-size:12px!important;
  line-height:1.55!important;
  font-style:normal!important;
}

@media(max-width:760px){
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses{
    grid-template-columns:1fr!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title{
    grid-template-columns:1fr!important;
    gap:6px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a{
    grid-column:1!important;
    justify-self:start!important;
  }
}


/* ==========================================================
   v0.9.57 KONTO ADRESSEN TITEL-FIX
   Überschrift und Bearbeiten-Link bewusst untereinander
   ========================================================== */

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:6px!important;
  width:100%!important;
  margin:0 0 12px!important;
  padding:0 0 10px!important;
  border-bottom:1px solid #e1e5ea!important;
  box-sizing:border-box!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  clear:both!important;
  color:#0b1020!important;
  font-size:16px!important;
  line-height:1.15!important;
  font-weight:900!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a{
  display:inline-block!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  clear:both!important;
  color:#e31b78!important;
  font-size:10px!important;
  line-height:1.25!important;
  font-weight:800!important;
  text-decoration:none!important;
  white-space:normal!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a:hover{
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}


/* ==========================================================
   v0.9.58 MOBILE NAVIGATION + WHATSAPP
   Kompaktes Offcanvas-Menü und kleiner Floating-Button
   ========================================================== */

@media(max-width:921px){

  /* Astra Offcanvas sauber und kompakt */
  .ast-mobile-popup-drawer{
    z-index:100000!important;
  }

  .ast-mobile-popup-drawer .ast-mobile-popup-overlay{
    background:rgba(7,11,19,.58)!important;
  }

  .ast-mobile-popup-drawer .ast-mobile-popup-inner{
    width:min(88vw,360px)!important;
    max-width:360px!important;
    background:#0b1020!important;
    color:#fff!important;
    box-shadow:-18px 0 40px rgba(0,0,0,.24)!important;
  }

  .ast-mobile-popup-drawer .ast-mobile-popup-content{
    padding:64px 14px 22px!important;
  }

  .ast-mobile-popup-drawer .main-header-menu,
  .ast-mobile-popup-drawer .ast-nav-menu{
    margin:0!important;
    padding:0!important;
  }

  .ast-mobile-popup-drawer .main-header-menu > .menu-item,
  .ast-mobile-popup-drawer .ast-nav-menu > .menu-item{
    margin:0!important;
    padding:0!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
  }

  .ast-mobile-popup-drawer .main-header-menu > .menu-item > .menu-link,
  .ast-mobile-popup-drawer .ast-nav-menu > .menu-item > .menu-link,
  .ast-mobile-header-content .main-header-menu > .menu-item > .menu-link{
    min-height:46px!important;
    padding:11px 12px!important;
    display:flex!important;
    align-items:center!important;
    color:#fff!important;
    background:transparent!important;
    font-size:14px!important;
    line-height:1.2!important;
    font-weight:800!important;
    letter-spacing:0!important;
  }

  .ast-mobile-popup-drawer .main-header-menu > .current-menu-item > .menu-link,
  .ast-mobile-popup-drawer .main-header-menu > .current-menu-ancestor > .menu-link{
    color:#fff!important;
    background:rgba(255,255,255,.08)!important;
    border-radius:10px!important;
  }

  .ast-mobile-popup-drawer .main-header-menu .sub-menu{
    margin:0!important;
    padding:4px 0 8px!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  .ast-mobile-popup-drawer .main-header-menu .sub-menu .menu-link{
    min-height:40px!important;
    padding:9px 14px 9px 24px!important;
    color:rgba(255,255,255,.72)!important;
    font-size:12px!important;
    font-weight:700!important;
  }

  .ast-mobile-popup-drawer .ast-mobile-popup-header{
    min-height:54px!important;
    padding:8px 12px!important;
  }

  .ast-mobile-popup-drawer .menu-toggle-close,
  .ast-mobile-popup-drawer .ast-menu-toggle{
    min-width:42px!important;
    min-height:42px!important;
    width:42px!important;
    height:42px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:#fff!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.08)!important;
  }

  /* WhatsApp mobil nur als kleiner Kreis */
  .ke-floating-ui{
    right:12px!important;
    bottom:14px!important;
    z-index:9980!important;
  }

  .ke-whatsapp-float{
    width:48px!important;
    min-width:48px!important;
    max-width:48px!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    padding:5px!important;
    border-radius:50%!important;
    justify-content:center!important;
    gap:0!important;
    box-shadow:0 8px 20px rgba(9,13,24,.22)!important;
  }

  .ke-whatsapp-float__icon{
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    max-height:38px!important;
    flex:0 0 38px!important;
  }

  .ke-whatsapp-float__icon svg{
    width:21px!important;
    height:21px!important;
  }

  .ke-whatsapp-float__text{
    display:none!important;
  }
}

@media(max-width:480px){
  .ast-mobile-popup-drawer .ast-mobile-popup-inner{
    width:min(90vw,340px)!important;
  }

  .ke-whatsapp-float{
    width:46px!important;
    min-width:46px!important;
    max-width:46px!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
  }

  .ke-whatsapp-float__icon{
    width:36px!important;
    min-width:36px!important;
    max-width:36px!important;
    height:36px!important;
    min-height:36px!important;
    max-height:36px!important;
    flex:0 0 36px!important;
  }
}


/* ==========================================================
   v0.9.59 MOBILE PRODUKTKARTEN KOMPAKTER
   Weniger Höhe, kompaktere Bilder, engere Abstände
   ========================================================== */

@media(max-width:760px){

  .woocommerce ul.products{
    row-gap:14px!important;
  }

  .woocommerce ul.products li.product{
    border-radius:16px!important;
    overflow:hidden!important;
  }

  .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
  .woocommerce ul.products li.product .woocommerce-LoopProduct-link{
    margin-bottom:0!important;
  }

  .woocommerce ul.products li.product img{
    width:100%!important;
    max-height:330px!important;
    object-fit:contain!important;
    padding:10px!important;
    margin-bottom:4px!important;
    background:#f8fafc!important;
    box-sizing:border-box!important;
  }

  .woocommerce ul.products li.product .astra-shop-summary-wrap{
    padding:10px 14px 14px!important;
  }

  .woocommerce ul.products li.product .ke-product-facts--loop{
    gap:5px!important;
    margin:4px 0 7px!important;
  }

  .woocommerce ul.products li.product .ke-product-facts--loop .ke-product-fact{
    padding:4px 7px!important;
    font-size:10px!important;
  }

  .woocommerce ul.products li.product .wc-gzd-additional-info{
    margin:3px 0!important;
    font-size:9px!important;
    line-height:1.3!important;
  }

  .woocommerce ul.products li.product .ast-woo-product-category{
    margin:4px 0!important;
    font-size:10px!important;
  }

  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    margin:5px 0 7px!important;
    font-size:15px!important;
    line-height:1.22!important;
  }

  .woocommerce ul.products li.product .price{
    margin:5px 0 8px!important;
    font-size:16px!important;
  }

  .woocommerce ul.products li.product a.button,
  .woocommerce ul.products li.product a.added_to_cart{
    min-height:42px!important;
    margin-top:6px!important;
    padding:9px 12px!important;
    font-size:11px!important;
  }

  .woocommerce ul.products li.product .ke-product-badges{
    top:10px!important;
    left:10px!important;
    right:10px!important;
  }

  .woocommerce ul.products li.product img.woocommerce-placeholder{
    max-height:250px!important;
    padding:24px!important;
  }

  .ke-shop-quicknav__items{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  .ke-shop-quicknav__item{
    width:100%!important;
    min-width:0!important;
    min-height:40px!important;
    padding:9px 10px!important;
    font-size:11px!important;
    line-height:1.15!important;
    white-space:normal!important;
  }
}

@media(max-width:420px){
  .woocommerce ul.products li.product img{
    max-height:300px!important;
  }

  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:14px!important;
  }
}


/* ==========================================================
   v0.9.60 MOBILE STARTSEITE KOMPAKTER
   Weniger Leerraum, kompaktere Karten und besser lesbare Headlines
   ========================================================== */

@media(max-width:760px){

  /* Allgemeine Sektionen auf gestalteten Seiten enger */
  .ke-designed-page .ke-section,
  .ke-designed-page section{
    scroll-margin-top:70px!important;
  }

  .ke-designed-page .ke-shell{
    width:min(100% - 28px, 1180px)!important;
  }

  /* Große Hero-/Pagehero-Bereiche mobil deutlich kompakter */
  .ke-designed-page .ke-hero,
  .ke-designed-page .ke-pagehero{
    padding-top:48px!important;
    padding-bottom:48px!important;
  }

  .ke-designed-page .ke-hero .ke-shell,
  .ke-designed-page .ke-pagehero .ke-shell{
    gap:24px!important;
  }

  .ke-designed-page .ke-hero h1,
  .ke-designed-page .ke-pagehero h1{
    font-size:clamp(34px,10vw,48px)!important;
    line-height:1.02!important;
    margin-bottom:16px!important;
  }

  .ke-designed-page .ke-hero p,
  .ke-designed-page .ke-pagehero p{
    font-size:16px!important;
    line-height:1.55!important;
  }

  /* Service-/Leistungskarten weniger hoch */
  .ke-designed-page .ke-card4,
  .ke-designed-page .ke-steps{
    gap:14px!important;
  }

  .ke-designed-page .ke-card4 > div,
  .ke-designed-page .ke-module{
    min-height:0!important;
    padding:22px!important;
    border-radius:18px!important;
  }

  .ke-designed-page .ke-card4 h3,
  .ke-designed-page .ke-module h3{
    margin-bottom:8px!important;
    font-size:22px!important;
    line-height:1.15!important;
  }

  .ke-designed-page .ke-card4 p,
  .ke-designed-page .ke-module p,
  .ke-designed-page .ke-note p{
    font-size:14px!important;
    line-height:1.5!important;
  }

  /* Farbige Startseiten-Kacheln kompakter */
  .ke-designed-page [class*="ke-service"],
  .ke-designed-page [class*="ke-feature"]{
    min-height:0!important;
  }

  /* Buttons nicht unnötig riesig */
  .ke-designed-page .ke-btn,
  .ke-designed-page .button,
  .ke-designed-page a[class*="button"]{
    min-height:44px!important;
  }

  /* Über-uns-Bereich: Logo und Text enger zusammen */
  .ke-designed-page .ke-about,
  .ke-designed-page [class*="about"]{
    gap:20px!important;
  }

  /* Lange Headlines nicht aus dem Viewport drücken */
  .ke-designed-page h2{
    font-size:clamp(30px,8vw,42px)!important;
    line-height:1.05!important;
    overflow-wrap:break-word!important;
  }

  /* Kartenraster mobil konsequent einspaltig */
  .ke-designed-page .ke-card4,
  .ke-designed-page .ke-steps{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:420px){
  .ke-designed-page .ke-shell{
    width:min(100% - 24px, 1180px)!important;
  }

  .ke-designed-page .ke-hero,
  .ke-designed-page .ke-pagehero{
    padding-top:40px!important;
    padding-bottom:40px!important;
  }

  .ke-designed-page .ke-card4 > div,
  .ke-designed-page .ke-module{
    padding:18px!important;
  }
}


/* ==========================================================
   v0.9.61 ECHTES MOBILES MENÜ
   Eigenes Knall-Effekt Offcanvas-Menü statt Astra-Mobile-Menü
   ========================================================== */

.ke-mobile-menu,
.ke-mobile-menu-toggle{
  display:none;
}

@media(max-width:921px){

  /* Astra-Mobilmenü ausblenden, damit nur ein Menü existiert */
  .ast-mobile-popup-drawer,
  .ast-mobile-header-wrap .menu-toggle,
  .ast-mobile-menu-trigger-minimal{
    display:none!important;
  }

  .ke-shoptools__actions{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
  }

  .ke-mobile-menu-toggle{
    display:inline-flex!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    padding:0!important;
    border:0!important;
    border-radius:50%!important;
    background:#0b1020!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    gap:4px!important;
    cursor:pointer!important;
  }

  .ke-mobile-menu-toggle span{
    display:block!important;
    width:19px!important;
    height:2px!important;
    border-radius:999px!important;
    background:#fff!important;
  }

  .ke-mobile-menu{
    display:block!important;
    position:fixed!important;
    inset:0!important;
    z-index:1000000!important;
    pointer-events:none!important;
    visibility:hidden!important;
  }

  .ke-mobile-menu.is-open{
    pointer-events:auto!important;
    visibility:visible!important;
  }

  .ke-mobile-menu__backdrop{
    position:absolute!important;
    inset:0!important;
    background:rgba(4,8,16,.58)!important;
    opacity:0!important;
    transition:opacity .18s ease!important;
  }

  .ke-mobile-menu.is-open .ke-mobile-menu__backdrop{
    opacity:1!important;
  }

  .ke-mobile-menu__panel{
    position:absolute!important;
    top:0!important;
    right:0!important;
    width:min(88vw,380px)!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    overflow-y:auto!important;
    background:#0b1020!important;
    color:#fff!important;
    transform:translateX(100%)!important;
    transition:transform .2s ease!important;
    box-shadow:-18px 0 50px rgba(0,0,0,.28)!important;
  }

  .ke-mobile-menu.is-open .ke-mobile-menu__panel{
    transform:translateX(0)!important;
  }

  html.ke-menu-open,
  html.ke-menu-open body{
    overflow:hidden!important;
  }

  .ke-mobile-menu__head{
    position:sticky!important;
    top:0!important;
    z-index:2!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    min-height:68px!important;
    padding:12px 16px!important;
    background:#0b1020!important;
    border-bottom:1px solid rgba(255,255,255,.1)!important;
  }

  .ke-mobile-menu__brand{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    color:#fff!important;
    text-decoration:none!important;
  }

  .ke-mobile-menu__brand span{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:38px!important;
    height:38px!important;
    border-radius:11px!important;
    background:linear-gradient(135deg,#e31b78,#ff7a00)!important;
    color:#fff!important;
    font-size:15px!important;
    font-weight:900!important;
  }

  .ke-mobile-menu__brand strong{
    color:#fff!important;
    font-size:17px!important;
    line-height:1!important;
  }

  .ke-mobile-menu__close{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.07)!important;
    color:#fff!important;
    font:400 30px/1 Arial,sans-serif!important;
    cursor:pointer!important;
  }

  .ke-mobile-menu__nav{
    padding:8px 12px 6px!important;
  }

  .ke-mobile-menu__nav a{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    min-height:48px!important;
    padding:11px 12px!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    color:#fff!important;
    font-size:14px!important;
    line-height:1.2!important;
    font-weight:800!important;
    text-decoration:none!important;
  }

  .ke-mobile-menu__nav a span{
    color:#21c7d9!important;
    font-size:24px!important;
    font-weight:400!important;
  }

  .ke-mobile-menu__section-title{
    padding:16px 16px 8px!important;
    color:#9ca7b7!important;
    font-size:10px!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
  }

  .ke-mobile-menu__cats{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    padding:4px 12px 16px!important;
  }

  .ke-mobile-menu__cats a{
    display:flex!important;
    align-items:center!important;
    min-height:42px!important;
    padding:9px 10px!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:12px!important;
    background:rgba(255,255,255,.05)!important;
    color:#fff!important;
    font-size:11px!important;
    line-height:1.2!important;
    font-weight:800!important;
    text-decoration:none!important;
  }

  .ke-mobile-menu__foot{
    padding:14px 16px 22px!important;
    color:#9ca7b7!important;
    font-size:11px!important;
  }
}

@media(max-width:420px){
  .ke-mobile-menu__panel{
    width:92vw!important;
  }

  .ke-mobile-menu__cats{
    grid-template-columns:1fr!important;
  }
}


/* ==========================================================
   v0.9.62 MOBILES MENÜ FEINSCHLIFF
   Kompakter, weniger Scrollweg, Konto klarer getrennt
   ========================================================== */

@media(max-width:921px){

  .ke-mobile-menu__head{
    min-height:62px!important;
    padding:10px 14px!important;
  }

  .ke-mobile-menu__brand span{
    width:34px!important;
    height:34px!important;
    border-radius:10px!important;
    font-size:14px!important;
  }

  .ke-mobile-menu__brand strong{
    font-size:16px!important;
  }

  .ke-mobile-menu__close{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    font-size:27px!important;
  }

  .ke-mobile-menu__nav{
    padding:4px 12px 4px!important;
  }

  .ke-mobile-menu__nav a{
    min-height:42px!important;
    padding:9px 10px!important;
    font-size:13px!important;
  }

  .ke-mobile-menu__nav a:last-child{
    margin-top:6px!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:11px!important;
    background:rgba(255,255,255,.045)!important;
  }

  .ke-mobile-menu__section-title{
    padding:13px 14px 6px!important;
    font-size:9px!important;
  }

  .ke-mobile-menu__cats{
    gap:6px!important;
    padding:4px 12px 12px!important;
  }

  .ke-mobile-menu__cats a{
    min-height:38px!important;
    padding:8px 9px!important;
    border-radius:10px!important;
    font-size:10px!important;
  }

  .ke-mobile-menu__foot{
    padding:10px 14px 14px!important;
    font-size:10px!important;
  }
}

@media(max-width:420px){
  .ke-mobile-menu__cats{
    grid-template-columns:1fr!important;
  }

  .ke-mobile-menu__cats a{
    min-height:36px!important;
  }
}


/* ==========================================================
   v0.9.70 BUTTON-KONTRAST & LESBARKEIT
   Nur Farben/Typografie, keine Layoutänderungen
   ========================================================== */

/* Primäre Shop-/Aktionsbuttons: maximal lesbar */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.added_to_cart,
.ke-btn,
.ke-shop-filter__submit,
.ke-access-button,
.ke-empty-cart-links a,
.ke-no-results-help a,
.ke-thankyou-actions a,
.ke-account-actions a{
  background:#0b1020!important;
  color:#ffffff!important;
  border-color:#0b1020!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
  text-shadow:none!important;
}

/* Hover/Fokus: klarer Markenakzent, weiter hohe Lesbarkeit */
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.added_to_cart:hover,
.ke-btn:hover,
.ke-shop-filter__submit:hover,
.ke-access-button:hover,
.ke-empty-cart-links a:hover,
.ke-no-results-help a:hover,
.ke-thankyou-actions a:hover,
.ke-account-actions a:hover,
.woocommerce a.button:focus-visible,
.woocommerce button.button:focus-visible,
.woocommerce input.button:focus-visible,
.ke-btn:focus-visible{
  background:#e31b78!important;
  color:#ffffff!important;
  border-color:#e31b78!important;
}

/* Deaktivierte Buttons bleiben eindeutig, aber lesbar */
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled]{
  background:#d8dde7!important;
  color:#536071!important;
  border-color:#d8dde7!important;
  opacity:1!important;
}

/* Sekundäre Buttons/Links mit weißem Grund */
.ke-btn--ghost,
.ke-btn--secondary,
.woocommerce a.button.alt.ke-secondary,
.woocommerce button.button.alt.ke-secondary{
  background:#ffffff!important;
  color:#0b1020!important;
  border:2px solid #0b1020!important;
  font-weight:800!important;
}

.ke-btn--ghost:hover,
.ke-btn--secondary:hover,
.woocommerce a.button.alt.ke-secondary:hover,
.woocommerce button.button.alt.ke-secondary:hover{
  background:#f2f5f9!important;
  color:#0b1020!important;
  border-color:#0b1020!important;
}

/* Mobile: Schrift minimal kräftiger/größer, ohne Buttons aufzublasen */
@media(max-width:760px){
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .woocommerce a.added_to_cart,
  .ke-btn,
  .ke-shop-filter__submit,
  .ke-access-button{
    font-size:12px!important;
    font-weight:850!important;
    line-height:1.2!important;
  }
}


/* ==========================================================
   v0.9.71 FACHKUNDEN-FREIGABEANTRAG
   Kunden-Self-Service im Mein-Konto-Bereich
   ========================================================== */

.ke-access-request{
  margin-top:24px;
  padding:24px;
  border:1px solid #e1e6ef;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 30px rgba(11,16,32,.05);
}

.ke-access-request__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:8px;
}

.ke-access-request__eyebrow{
  display:block;
  margin-bottom:5px;
  color:#e31b78;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.ke-access-request h2{
  margin:0;
  color:#0b1020;
  font-size:26px;
  line-height:1.1;
}

.ke-access-request__status{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  background:#eef8f0;
  color:#25723a;
  font-size:11px;
  font-weight:900;
}

.ke-access-request__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px 16px;
  margin-top:18px;
}

.ke-access-request__form p{
  margin:0 0 14px;
}

.ke-access-request__form label{
  display:block;
  margin-bottom:6px;
  color:#202938;
  font-size:12px;
  font-weight:800;
}

.ke-access-request__form label span{
  color:#7b8798;
  font-weight:600;
}

.ke-access-request__form input[type="text"],
.ke-access-request__form input[type="date"],
.ke-access-request__form input[type="file"],
.ke-access-request__form select,
.ke-access-request__form textarea{
  width:100%;
  min-height:44px;
  padding:10px 12px;
  border:1px solid #cfd6e2;
  border-radius:10px;
  background:#fff;
  color:#182233;
  box-sizing:border-box;
}

.ke-access-request__form textarea{
  min-height:90px;
  resize:vertical;
}

.ke-access-request__form small{
  display:block;
  margin-top:5px;
  color:#6b7686;
  font-size:10px;
}

.ke-access-request__privacy{
  color:#667085;
  font-size:11px;
  line-height:1.45;
}

@media(max-width:760px){
  .ke-access-request{
    padding:18px;
    border-radius:15px;
  }

  .ke-access-request__head{
    display:block;
  }

  .ke-access-request__status{
    margin-top:10px;
  }

  .ke-access-request__grid{
    grid-template-columns:1fr;
    gap:0;
  }

  .ke-access-request h2{
    font-size:22px;
  }
}


/* ==========================================================
   v0.9.72 GETRENNTE NACHWEISE & GEWERBEPRÜFUNG
   ========================================================== */

.ke-access-card{
  margin:20px 0;
  padding:18px;
  border:1px solid #dfe5ee;
  border-radius:14px;
  background:#fafbfd;
}

.ke-access-card legend{
  padding:0 8px;
  color:#0b1020;
  font-size:16px;
  font-weight:900;
}

.ke-access-card__hint{
  margin:0 0 14px!important;
  color:#5f6b7b;
  font-size:12px;
  line-height:1.45;
}

.ke-access-card--business{
  border-color:#f0cfe0;
  background:#fffafd;
}

.ke-access-check{
  display:flex!important;
  align-items:flex-start;
  gap:8px;
  margin-top:4px;
  color:#2a3443!important;
  font-size:12px!important;
  font-weight:700!important;
}

.ke-access-check input{
  margin-top:2px;
}

.ke-access-request__wide{
  grid-column:1 / -1;
}

@media(max-width:760px){
  .ke-access-card{
    margin:16px 0;
    padding:14px;
    border-radius:12px;
  }

  .ke-access-card legend{
    font-size:15px;
  }

  .ke-access-request__wide{
    grid-column:auto;
  }
}


/* ==========================================================
   v0.9.73 F2-FACHINFOSEITE
   ========================================================== */

.ke-f2info{
  width:min(1180px,calc(100% - 40px));
  margin:42px auto 70px;
  color:#202938;
}

.ke-f2info__hero{
  max-width:900px;
  margin:0 0 28px;
}

.ke-f2info__eyebrow{
  display:block;
  margin-bottom:9px;
  color:#e31b78;
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.ke-f2info__hero h1{
  margin:0 0 18px;
  color:#0b1020;
  font-size:clamp(38px,5.5vw,72px);
  line-height:.98;
  letter-spacing:-.035em;
}

.ke-f2info__lead{
  margin:0;
  max-width:850px;
  font-size:19px;
  line-height:1.6;
}

.ke-f2info__notice{
  margin:30px 0;
  padding:24px 26px;
  border-radius:18px;
}

.ke-f2info__notice--dark{
  background:#0b1020;
  color:#fff;
}

.ke-f2info__notice strong{
  display:block;
  margin-bottom:8px;
  color:#fff;
  font-size:19px;
}

.ke-f2info__notice p{
  margin:0;
  color:#e5e9f0;
  line-height:1.6;
}

.ke-f2info__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin:28px 0;
}

.ke-f2info__card{
  position:relative;
  padding:26px;
  border:1px solid #e1e6ef;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 30px rgba(11,16,32,.045);
}

.ke-f2info__num{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  margin-bottom:16px;
  border-radius:11px;
  background:#f7e6ef;
  color:#e31b78;
  font-size:12px;
  font-weight:900;
}

.ke-f2info__card h2,
.ke-f2info__section h2,
.ke-f2info__check h2,
.ke-f2info__cta h2,
.ke-f2info__sources h2{
  margin:0 0 12px;
  color:#0b1020;
  line-height:1.08;
}

.ke-f2info__card h2{
  font-size:24px;
}

.ke-f2info__card p{
  margin:0 0 10px;
  line-height:1.55;
}

.ke-f2info__section{
  margin:34px 0;
  padding:28px;
  border-radius:18px;
  background:#f7f9fc;
}

.ke-f2info__section h2{
  font-size:30px;
}

.ke-f2info__section > p{
  margin:0;
  line-height:1.65;
}

.ke-f2info__example{
  margin-top:18px;
  padding:18px;
  border-left:4px solid #e31b78;
  border-radius:0 12px 12px 0;
  background:#fff;
}

.ke-f2info__example strong{
  display:block;
  margin-bottom:5px;
  color:#0b1020;
}

.ke-f2info__example p{
  margin:0;
}

.ke-f2info__check{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:30px;
  align-items:start;
  margin:34px 0;
  padding:30px;
  border:1px solid #dfe5ee;
  border-radius:18px;
  background:#fff;
}

.ke-f2info__check ul{
  margin:0;
  padding:0;
  list-style:none;
}

.ke-f2info__check li{
  position:relative;
  margin:0;
  padding:10px 0 10px 28px;
  border-bottom:1px solid #edf0f4;
}

.ke-f2info__check li:before{
  content:"✓";
  position:absolute;
  left:0;
  color:#1f9c4d;
  font-weight:900;
}

.ke-f2info__cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:26px;
  margin:36px 0;
  padding:30px;
  border-radius:20px;
  background:linear-gradient(135deg,#0b1020,#171f37);
  color:#fff;
}

.ke-f2info__cta h2{
  color:#fff;
  font-size:30px;
}

.ke-f2info__cta p{
  margin:0;
  max-width:700px;
  color:#dfe5ee;
}

.ke-f2info__button{
  flex:0 0 auto;
  white-space:nowrap;
}

.ke-f2info__sources{
  margin-top:34px;
  padding:24px 0 0;
  border-top:1px solid #dfe5ee;
}

.ke-f2info__sources h2{
  font-size:24px;
}

.ke-f2info__links{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:14px 0;
}

.ke-f2info__links a{
  display:inline-flex;
  padding:7px 10px;
  border:1px solid #d9e0e9;
  border-radius:999px;
  background:#fff;
  color:#0b1020;
  font-size:11px;
  font-weight:800;
  text-decoration:none;
}

.ke-f2info__fineprint{
  color:#697586;
  font-size:11px;
  line-height:1.5;
}

@media(max-width:760px){
  .ke-f2info{
    width:min(100% - 24px,1180px);
    margin:26px auto 48px;
  }

  .ke-f2info__hero h1{
    font-size:clamp(36px,11vw,52px);
  }

  .ke-f2info__lead{
    font-size:16px;
  }

  .ke-f2info__grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .ke-f2info__card,
  .ke-f2info__section,
  .ke-f2info__check,
  .ke-f2info__cta{
    padding:20px;
    border-radius:15px;
  }

  .ke-f2info__check{
    grid-template-columns:1fr;
    gap:12px;
  }

  .ke-f2info__cta{
    display:block;
  }

  .ke-f2info__cta .button{
    width:100%;
    margin-top:18px;
    text-align:center;
  }

  .ke-f2info__section h2,
  .ke-f2info__check h2,
  .ke-f2info__cta h2{
    font-size:25px;
  }
}


/* ==========================================================
   v0.9.74 GENEHMIGUNGEN & ANTRÄGE
   ========================================================== */

.ke-permit{
  width:min(1180px,calc(100% - 40px));
  margin:42px auto 70px;
  color:#202938;
}

.ke-permit__hero{
  max-width:920px;
  margin-bottom:30px;
}

.ke-permit__eyebrow{
  display:block;
  margin-bottom:8px;
  color:#e31b78;
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.ke-permit__hero h1{
  margin:0 0 16px;
  color:#0b1020;
  font-size:clamp(40px,5.5vw,72px);
  line-height:.98;
  letter-spacing:-.035em;
}

.ke-permit__hero p{
  margin:0;
  max-width:850px;
  font-size:18px;
  line-height:1.6;
}

.ke-permit__cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin:30px 0;
}

.ke-permit__card{
  min-height:240px;
  padding:24px;
  border:1px solid #dfe5ee;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 30px rgba(11,16,32,.045);
}

.ke-permit__card > span{
  display:inline-block;
  margin-bottom:18px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.ke-permit__card h2{
  margin:0 0 12px;
  color:#0b1020;
  font-size:28px;
  line-height:1.05;
}

.ke-permit__card p{
  margin:0 0 18px;
  line-height:1.55;
}

.ke-permit__card strong{
  display:block;
  margin-top:auto;
  font-size:12px;
}

.ke-permit__card--pink{border-top:4px solid #e31b78}
.ke-permit__card--pink > span,.ke-permit__card--pink strong{color:#c91668}
.ke-permit__card--cyan{border-top:4px solid #1bb9cf}
.ke-permit__card--cyan > span,.ke-permit__card--cyan strong{color:#087e90}
.ke-permit__card--orange{border-top:4px solid #ff8a1f}
.ke-permit__card--orange > span,.ke-permit__card--orange strong{color:#b95b00}
.ke-permit__card--violet{border-top:4px solid #7c5ce5}
.ke-permit__card--violet > span,.ke-permit__card--violet strong{color:#6042c8}

.ke-permit__process{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:30px;
  margin:36px 0;
  padding:30px;
  border-radius:20px;
  background:#0b1020;
  color:#fff;
}

.ke-permit__process h2{
  margin:0;
  color:#fff;
  font-size:32px;
  line-height:1.05;
}

.ke-permit__process ol{
  margin:0;
  padding:0;
  list-style:none;
}

.ke-permit__process li{
  display:grid;
  grid-template-columns:180px 1fr;
  gap:14px;
  padding:12px 0;
  border-bottom:1px solid rgba(255,255,255,.12);
}

.ke-permit__process li:last-child{border-bottom:0}
.ke-permit__process strong{color:#fff}
.ke-permit__process span{color:#d9e0ea;line-height:1.45}

.ke-permit__two{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin:34px 0;
}

.ke-permit__box{
  padding:26px;
  border:1px solid #dfe5ee;
  border-radius:18px;
  background:#f8fafc;
}

.ke-permit__box h2{
  margin:0 0 10px;
  color:#0b1020;
  font-size:26px;
}

.ke-permit__box p{
  margin:0 0 18px;
  line-height:1.55;
}

.ke-permit__authority-note{
  margin:34px 0;
  padding:28px;
  border-radius:18px;
  background:linear-gradient(135deg,#fff7fb,#f7fbff);
  border:1px solid #eadfe8;
}

.ke-permit__authority-note h2{
  margin:0 0 10px;
  color:#0b1020;
  font-size:28px;
}

.ke-permit__authority-note p{
  margin:0;
  max-width:900px;
  line-height:1.6;
}

.ke-permit__fine{
  padding-top:18px;
  border-top:1px solid #dfe5ee;
  color:#697586;
  font-size:11px;
  line-height:1.5;
}

@media(max-width:760px){
  .ke-permit{
    width:min(100% - 24px,1180px);
    margin:26px auto 48px;
  }

  .ke-permit__hero h1{
    font-size:clamp(36px,11vw,52px);
  }

  .ke-permit__hero p{
    font-size:16px;
  }

  .ke-permit__cards,
  .ke-permit__two,
  .ke-permit__process{
    grid-template-columns:1fr;
  }

  .ke-permit__card,
  .ke-permit__box,
  .ke-permit__process,
  .ke-permit__authority-note{
    padding:20px;
    border-radius:15px;
  }

  .ke-permit__card{
    min-height:0;
  }

  .ke-permit__process{
    gap:16px;
  }

  .ke-permit__process li{
    grid-template-columns:1fr;
    gap:4px;
  }

  .ke-permit__box .button{
    width:100%;
    text-align:center;
  }
}


/* ==========================================================
   v0.9.75 PDF-DOWNLOADS GENEHMIGUNGEN
   ========================================================== */

.ke-permit__download{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin-top:4px!important;
  text-decoration:none!important;
}

@media(max-width:760px){
  .ke-permit__download{
    width:100%!important;
    text-align:center!important;
  }
}


/* ==========================================================
   v0.9.76 BEHÖRDENFINDER DATENBASIS
   ========================================================== */

.ke-authority-finder{
  width:min(1180px,calc(100% - 40px));
  margin:42px auto 70px;
  color:#202938;
}

.ke-authority-finder__hero{
  max-width:900px;
  margin-bottom:26px;
}

.ke-authority-finder__eyebrow{
  display:block;
  margin-bottom:8px;
  color:#e31b78;
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.ke-authority-finder__hero h1{
  margin:0 0 15px;
  color:#0b1020;
  font-size:clamp(40px,5.5vw,70px);
  line-height:.98;
  letter-spacing:-.035em;
}

.ke-authority-finder__hero p{
  margin:0;
  max-width:840px;
  font-size:17px;
  line-height:1.6;
}

.ke-authority-finder__form{
  display:grid;
  grid-template-columns:220px 1fr auto;
  gap:12px;
  align-items:end;
  margin:28px 0;
  padding:18px;
  border:1px solid #dfe5ee;
  border-radius:16px;
  background:#f8fafc;
}

.ke-authority-finder__form label{
  display:block;
  margin-bottom:5px;
  font-size:11px;
  font-weight:800;
}

.ke-authority-finder__form select,
.ke-authority-finder__form input{
  width:100%;
  min-height:44px;
  padding:9px 11px;
  border:1px solid #cfd6e2;
  border-radius:10px;
  background:#fff;
}

.ke-authority-finder__count{
  margin-bottom:12px;
  color:#667085;
  font-size:12px;
  font-weight:700;
}

.ke-authority-card{
  margin:0 0 16px;
  padding:24px;
  border:1px solid #dfe5ee;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 30px rgba(11,16,32,.045);
}

.ke-authority-card__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:14px;
}

.ke-authority-card__head span{
  display:block;
  margin-bottom:5px;
  color:#e31b78;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.ke-authority-card__head h2{
  margin:0 0 4px;
  color:#0b1020;
  font-size:25px;
  line-height:1.1;
}

.ke-authority-card__head p,
.ke-authority-card__head small{
  margin:0;
  color:#6b7686;
}

.ke-authority-card__processes{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:16px 0;
}

.ke-authority-card__process{
  padding:12px;
  border-radius:12px;
  background:#f7f9fc;
}

.ke-authority-card__process strong,
.ke-authority-card__process span,
.ke-authority-card__process small{
  display:block;
}

.ke-authority-card__process strong{
  margin-bottom:4px;
  color:#0b1020;
}

.ke-authority-card__process span{
  color:#25723a;
  font-size:12px;
  font-weight:800;
}

.ke-authority-card__process small{
  margin-top:4px;
  color:#697586;
  line-height:1.4;
}

.ke-authority-card__contact{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  padding-top:14px;
  border-top:1px solid #edf0f4;
  font-size:12px;
}

.ke-authority-card__contact a{
  font-weight:800;
}

.ke-authority-finder__empty{
  padding:28px;
  border-radius:16px;
  background:#f7f9fc;
  text-align:center;
}

.ke-authority-finder__empty h2{
  margin:0 0 8px;
  color:#0b1020;
}

@media(max-width:760px){
  .ke-authority-finder{
    width:min(100% - 24px,1180px);
    margin:26px auto 48px;
  }

  .ke-authority-finder__hero h1{
    font-size:clamp(36px,11vw,52px);
  }

  .ke-authority-finder__form{
    grid-template-columns:1fr;
  }

  .ke-authority-card{
    padding:18px;
    border-radius:15px;
  }

  .ke-authority-card__head{
    display:block;
  }

  .ke-authority-card__head small{
    display:block;
    margin-top:8px;
  }

  .ke-authority-card__processes{
    grid-template-columns:1fr;
  }

  .ke-authority-card__contact{
    flex-direction:column;
  }
}


/* ==========================================================
   v0.9.77 SHOP-KATEGORIEN & HERSTELLER POLISH
   Rein visuell, keine Bild- oder Produktlogik
   ========================================================== */

/* Archivköpfe einheitlich: Shop, Kategorien und Hersteller */
.woocommerce-shop .woocommerce-products-header,
.tax-product_cat .woocommerce-products-header,
.tax-product_brand .woocommerce-products-header,
.tax-pa-hersteller .woocommerce-products-header{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  margin-bottom:18px!important;
  padding:30px 32px!important;
  border:1px solid rgba(255,255,255,.06)!important;
  border-radius:22px!important;
  box-shadow:0 16px 38px rgba(9,13,24,.08)!important;
}

.woocommerce-shop .woocommerce-products-header:after,
.tax-product_cat .woocommerce-products-header:after,
.tax-product_brand .woocommerce-products-header:after,
.tax-pa-hersteller .woocommerce-products-header:after{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  width:210px!important;
  height:210px!important;
  right:-70px!important;
  top:-95px!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(255,255,255,.08),rgba(255,255,255,0) 68%)!important;
  pointer-events:none!important;
}

.woocommerce-shop .woocommerce-products-header__title,
.tax-product_cat .woocommerce-products-header__title,
.tax-product_brand .woocommerce-products-header__title,
.tax-pa-hersteller .woocommerce-products-header__title{
  max-width:920px!important;
  margin:0!important;
  color:#fff!important;
  font-size:clamp(2.15rem,4.4vw,3.65rem)!important;
  line-height:.98!important;
  letter-spacing:-.025em!important;
}

/* Herstellerbeschreibungen genauso lesbar wie Kategorien */
.tax-product_brand .woocommerce-products-header .term-description,
.tax-pa-hersteller .woocommerce-products-header .term-description,
.tax-product_cat .woocommerce-products-header .term-description{
  max-width:820px!important;
  margin-top:11px!important;
  color:rgba(255,255,255,.78)!important;
  font-size:13px!important;
  line-height:1.6!important;
}

.tax-product_brand .woocommerce-products-header .term-description p,
.tax-pa-hersteller .woocommerce-products-header .term-description p,
.tax-product_cat .woocommerce-products-header .term-description p{
  margin:0 0 7px!important;
}

.tax-product_brand .woocommerce-products-header .term-description p:last-child,
.tax-pa-hersteller .woocommerce-products-header .term-description p:last-child,
.tax-product_cat .woocommerce-products-header .term-description p:last-child{
  margin-bottom:0!important;
}

/* Breadcrumbs wie eine ruhige, eigene Orientierungslinie */
.woocommerce-shop .woocommerce-breadcrumb,
.tax-product_cat .woocommerce-breadcrumb,
.tax-product_brand .woocommerce-breadcrumb,
.tax-pa-hersteller .woocommerce-breadcrumb{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  width:max-content!important;
  max-width:100%!important;
  margin:0 0 12px!important;
  padding:7px 10px!important;
  border:1px solid #e6eaf0!important;
  border-radius:999px!important;
  background:#f8fafc!important;
  color:#8b95a5!important;
  font-size:10px!important;
  line-height:1.2!important;
}

.woocommerce-shop .woocommerce-breadcrumb a,
.tax-product_cat .woocommerce-breadcrumb a,
.tax-product_brand .woocommerce-breadcrumb a,
.tax-pa-hersteller .woocommerce-breadcrumb a{
  color:#465166!important;
  font-weight:800!important;
}

/* Ergebniszeile / Sortierung ruhiger und klarer */
.woocommerce-shop .woocommerce-result-count,
.tax-product_cat .woocommerce-result-count,
.tax-product_brand .woocommerce-result-count,
.tax-pa-hersteller .woocommerce-result-count{
  margin:8px 0 12px!important;
  color:#687180!important;
  font-size:11px!important;
  font-weight:700!important;
}

.woocommerce-shop .woocommerce-ordering,
.tax-product_cat .woocommerce-ordering,
.tax-product_brand .woocommerce-ordering,
.tax-pa-hersteller .woocommerce-ordering{
  margin:0 0 12px!important;
}

.woocommerce-shop .woocommerce-ordering select,
.tax-product_cat .woocommerce-ordering select,
.tax-product_brand .woocommerce-ordering select,
.tax-pa-hersteller .woocommerce-ordering select{
  min-height:40px!important;
  padding:7px 34px 7px 12px!important;
  border:1px solid #dfe4ea!important;
  border-radius:12px!important;
  background-color:#fff!important;
  color:#253047!important;
  font-size:11px!important;
  font-weight:800!important;
}

/* Kategoriekarten klarer gliedern */
.woocommerce .products .product-category{
  border-radius:18px!important;
}

.woocommerce .products .product-category > a{
  display:block!important;
  height:100%!important;
  text-decoration:none!important;
}

.woocommerce .products .product-category a img{
  width:100%!important;
  min-height:170px!important;
  max-height:220px!important;
  padding:12px!important;
  object-fit:contain!important;
  box-sizing:border-box!important;
  background:linear-gradient(180deg,#fafbfc,#f5f7fa)!important;
}

.woocommerce .products .product-category .woocommerce-loop-category__title{
  position:relative!important;
  padding:16px 18px 19px!important;
  font-size:1.02rem!important;
  line-height:1.18!important;
  font-weight:900!important;
}

.woocommerce .products .product-category .woocommerce-loop-category__title:after{
  content:"›"!important;
  position:absolute!important;
  right:17px!important;
  top:50%!important;
  transform:translateY(-52%)!important;
  color:#a0a8b5!important;
  font-size:22px!important;
  font-weight:500!important;
}

.woocommerce .products .product-category .count{
  display:block!important;
  margin-top:5px!important;
  padding:0!important;
  color:#939dac!important;
  font-size:9px!important;
  font-weight:800!important;
  letter-spacing:.02em!important;
}

/* Kontextnavigation optisch näher an den Archivkopf */
.tax-product_cat .ke-archive-context,
.tax-product_brand .ke-archive-context,
.tax-pa-hersteller .ke-archive-context{
  margin-top:0!important;
  margin-bottom:16px!important;
  border-radius:14px!important;
}

/* Mobile */
@media(max-width:760px){
  .woocommerce-shop .woocommerce-products-header,
  .tax-product_cat .woocommerce-products-header,
  .tax-product_brand .woocommerce-products-header,
  .tax-pa-hersteller .woocommerce-products-header{
    margin-bottom:14px!important;
    padding:22px 19px!important;
    border-radius:17px!important;
  }

  .woocommerce-shop .woocommerce-products-header__title,
  .tax-product_cat .woocommerce-products-header__title,
  .tax-product_brand .woocommerce-products-header__title,
  .tax-pa-hersteller .woocommerce-products-header__title{
    font-size:clamp(2rem,10vw,2.85rem)!important;
  }

  .tax-product_brand .woocommerce-products-header .term-description,
  .tax-pa-hersteller .woocommerce-products-header .term-description,
  .tax-product_cat .woocommerce-products-header .term-description{
    font-size:12px!important;
    line-height:1.55!important;
  }

  .woocommerce-shop .woocommerce-breadcrumb,
  .tax-product_cat .woocommerce-breadcrumb,
  .tax-product_brand .woocommerce-breadcrumb,
  .tax-pa-hersteller .woocommerce-breadcrumb{
    width:100%!important;
    border-radius:12px!important;
    box-sizing:border-box!important;
  }

  .woocommerce-shop .woocommerce-result-count,
  .tax-product_cat .woocommerce-result-count,
  .tax-product_brand .woocommerce-result-count,
  .tax-pa-hersteller .woocommerce-result-count,
  .woocommerce-shop .woocommerce-ordering,
  .tax-product_cat .woocommerce-ordering,
  .tax-product_brand .woocommerce-ordering,
  .tax-pa-hersteller .woocommerce-ordering{
    float:none!important;
    width:100%!important;
  }

  .woocommerce-shop .woocommerce-ordering select,
  .tax-product_cat .woocommerce-ordering select,
  .tax-product_brand .woocommerce-ordering select,
  .tax-pa-hersteller .woocommerce-ordering select{
    width:100%!important;
  }

  .woocommerce .products .product-category a img{
    min-height:135px!important;
    max-height:165px!important;
  }

  .woocommerce .products .product-category .woocommerce-loop-category__title{
    padding:13px 15px 16px!important;
    font-size:.94rem!important;
  }

  .woocommerce .products .product-category .woocommerce-loop-category__title:after{
    right:14px!important;
  }
}


/* ==========================================================
   v0.9.78 SHOP-NAVIGATION / HERSTELLERZUGANG
   ========================================================== */

/* Schnellzugriff bei vielen Punkten horizontal scrollbar statt Umbruchchaos */
.ke-shop-quicknav__items{
  scrollbar-width:thin;
  scrollbar-color:#cbd2dd transparent;
}

.ke-shop-quicknav__item{
  white-space:nowrap!important;
}

/* Hersteller-/Unterkategorienleiste klarer von Filtern trennen */
.ke-archive-context__label{
  flex:0 0 auto!important;
}

.ke-archive-context__items{
  overflow-x:auto!important;
  scrollbar-width:thin;
  scrollbar-color:#cbd2dd transparent;
}

.ke-archive-context__item{
  white-space:nowrap!important;
}

@media(max-width:760px){
  .ke-shop-quicknav{
    overflow:hidden!important;
  }

  .ke-shop-quicknav__items,
  .ke-archive-context__items{
    -webkit-overflow-scrolling:touch;
  }
}


/* ==========================================================
   v0.9.79 LIVE-PRODUKTSUCHE
   ========================================================== */

.ke-shoptools__searchfield{
  position:relative!important;
}

.ke-live-search{
  position:absolute;
  z-index:99999;
  left:0;
  right:0;
  top:calc(100% + 8px);
  display:none;
  overflow:hidden;
  border:1px solid #dfe5ee;
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 50px rgba(8,14,28,.18);
}

.ke-live-search.is-open{
  display:block;
}

.ke-live-search__item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:12px 14px;
  border-bottom:1px solid #edf0f4;
  color:#202938!important;
  text-decoration:none!important;
}

.ke-live-search__item:hover,
.ke-live-search__item:focus{
  background:#f7f9fc;
}

.ke-live-search__copy{
  min-width:0;
}

.ke-live-search__copy strong{
  display:block;
  overflow:hidden;
  color:#0b1020;
  font-size:13px;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.ke-live-search__copy small{
  display:block;
  margin-top:3px;
  overflow:hidden;
  color:#7c8797;
  font-size:10px;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.ke-live-search__price{
  flex:0 0 auto;
  max-width:180px;
  color:#0b1020;
  font-size:11px;
  font-weight:900;
  text-align:right;
}

.ke-live-search__empty{
  padding:14px;
  color:#687180;
  font-size:11px;
  line-height:1.45;
}

.ke-live-search__all{
  width:100%;
  padding:11px 14px!important;
  border:0!important;
  border-radius:0!important;
  background:#0b1020!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:900!important;
  text-align:left!important;
  cursor:pointer!important;
}

.ke-live-search__all:hover{
  background:#e31b78!important;
}

@media(max-width:760px){
  .ke-live-search{
    position:fixed!important;
    left:12px!important;
    right:12px!important;
    top:116px!important;
    max-height:calc(100vh - 145px)!important;
    overflow-y:auto!important;
    border-radius:14px!important;
  }

  .ke-live-search__item{
    padding:13px 12px!important;
  }

  .ke-live-search__price{
    max-width:120px;
    font-size:10px;
  }
}


/* ==========================================================
   v0.9.80 LIVE-SUCHE PREIS-HOTFIX
   ========================================================== */

.ke-live-search__price{
  flex:0 0 auto;
  max-width:145px!important;
  overflow:hidden;
  color:#0b1020;
  font-size:11px;
  font-weight:900;
  line-height:1.2;
  text-align:right;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.ke-live-search__copy{
  flex:1 1 auto!important;
}

@media(max-width:760px){
  .ke-live-search__price{
    max-width:95px!important;
  }
}


/* ==========================================================
   v0.9.82 NICHT VERFÜGBAR -> PASSENDE ALTERNATIVEN
   ========================================================== */

.ke-oos-alternatives{
  margin:34px 0 8px!important;
  padding:26px!important;
  border:1px solid #e0e5ec!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,#fbfcfe,#f7f9fc)!important;
}

.ke-oos-alternatives__head{
  max-width:760px!important;
  margin-bottom:20px!important;
}

.ke-oos-alternatives__eyebrow{
  display:block!important;
  margin-bottom:6px!important;
  color:#e31b78!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}

.ke-oos-alternatives__head h2{
  margin:0 0 8px!important;
  color:#0b1020!important;
  font-size:clamp(1.7rem,3vw,2.3rem)!important;
  line-height:1.05!important;
}

.ke-oos-alternatives__head p{
  margin:0!important;
  color:#687180!important;
  font-size:13px!important;
  line-height:1.55!important;
}

.ke-oos-alternatives ul.products{
  margin-bottom:0!important;
}

@media(max-width:760px){
  .ke-oos-alternatives{
    margin-top:24px!important;
    padding:18px!important;
    border-radius:16px!important;
  }

  .ke-oos-alternatives__head{
    margin-bottom:14px!important;
  }

  .ke-oos-alternatives__head p{
    font-size:12px!important;
  }
}


/* ==========================================================
   v0.9.83 HOMEPAGE FINALER FEINSCHLIFF
   ========================================================== */

.ke-home-v2 .ke-cat-icon,
.ke-home-v2 .ke-service-icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-family:inherit!important;
  font-weight:900!important;
  letter-spacing:.03em!important;
}

.ke-home-v2 .ke-cat-icon{
  min-width:44px!important;
  height:44px!important;
  border-radius:12px!important;
  background:#0b1020!important;
  color:#fff!important;
  font-size:12px!important;
}

.ke-home-v2 .ke-service-icon{
  width:48px!important;
  height:48px!important;
  border:1px solid rgba(11,16,32,.10)!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.78)!important;
  color:#0b1020!important;
  font-size:11px!important;
}

.ke-home-servicebar{
  padding:0 0 34px!important;
}

.ke-home-servicebar__grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  overflow:hidden!important;
  border:1px solid #e1e6ed!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 10px 32px rgba(11,16,32,.05)!important;
}

.ke-home-servicebar__grid > div{
  padding:18px 20px!important;
  border-right:1px solid #edf0f4!important;
}

.ke-home-servicebar__grid > div:last-child{
  border-right:0!important;
}

.ke-home-servicebar__grid strong,
.ke-home-servicebar__grid span{
  display:block!important;
}

.ke-home-servicebar__grid strong{
  margin-bottom:4px!important;
  color:#0b1020!important;
  font-size:13px!important;
  font-weight:900!important;
}

.ke-home-servicebar__grid span{
  color:#6c7685!important;
  font-size:11px!important;
  line-height:1.35!important;
}

@media(max-width:760px){
  .ke-home-servicebar{
    padding-bottom:24px!important;
  }

  .ke-home-servicebar__grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    border-radius:15px!important;
  }

  .ke-home-servicebar__grid > div{
    padding:15px!important;
    border-right:1px solid #edf0f4!important;
    border-bottom:1px solid #edf0f4!important;
  }

  .ke-home-servicebar__grid > div:nth-child(2n){
    border-right:0!important;
  }

  .ke-home-servicebar__grid > div:nth-last-child(-n+2){
    border-bottom:0!important;
  }

  .ke-home-v2 .ke-service-icon{
    width:42px!important;
    height:42px!important;
    border-radius:12px!important;
    font-size:10px!important;
  }
}


/* ==========================================================
   v0.9.84 ANGELCENTER / GANZJÄHRIGE ABHOLUNG
   ========================================================== */

.ke-home-partner-pickup{
  margin:18px 0 22px!important;
  padding:18px 20px!important;
  border:1px solid #dfe5ee!important;
  border-left:4px solid #1bb9cf!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#f8fbfd,#ffffff)!important;
}

.ke-home-partner-pickup__eyebrow{
  display:block!important;
  margin-bottom:5px!important;
  color:#087e90!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

.ke-home-partner-pickup strong{
  display:block!important;
  margin-bottom:6px!important;
  color:#0b1020!important;
  font-size:16px!important;
}

.ke-home-partner-pickup p{
  margin:0!important;
  color:#5f6b7b!important;
  font-size:12px!important;
  line-height:1.55!important;
}

@media(max-width:760px){
  .ke-home-partner-pickup{
    padding:16px!important;
    border-radius:12px!important;
  }

  .ke-home-partner-pickup strong{
    font-size:15px!important;
  }

  .ke-home-partner-pickup p{
    font-size:11.5px!important;
  }
}


/* ==========================================================
   v0.9.85 HOMEPAGE PARTNER-ABHOLBLOCK
   ========================================================== */

.ke-home-pickup{
  padding-top:0!important;
}

.ke-home-pickup__grid{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:28px;
  align-items:center;
  padding:26px 28px;
  border:1px solid #dde4ec;
  border-radius:20px;
  background:linear-gradient(135deg,#f8fbfd 0%,#ffffff 60%);
  box-shadow:0 10px 30px rgba(11,16,32,.04);
}

.ke-home-pickup__eyebrow{
  display:block;
  margin-bottom:7px;
  color:#087e90;
  font-size:10px;
  font-weight:900;
  letter-spacing:.09em;
}

.ke-home-pickup h2{
  margin:0 0 9px!important;
  color:#0b1020!important;
  font-size:clamp(1.8rem,3.4vw,2.65rem)!important;
  line-height:1.02!important;
}

.ke-home-pickup p{
  margin:0!important;
  max-width:720px;
  color:#637083!important;
  font-size:13px!important;
  line-height:1.6!important;
}

.ke-home-pickup__facts{
  display:grid;
  gap:10px;
}

.ke-home-pickup__facts > div{
  padding:14px 16px;
  border-radius:13px;
  background:#0b1020;
  color:#fff;
}

.ke-home-pickup__facts strong,
.ke-home-pickup__facts span{
  display:block;
}

.ke-home-pickup__facts strong{
  margin-bottom:4px;
  font-size:12px;
}

.ke-home-pickup__facts span{
  color:#d7dce6;
  font-size:11px;
  line-height:1.45;
}

@media(max-width:760px){
  .ke-home-pickup__grid{
    grid-template-columns:1fr;
    gap:16px;
    padding:19px;
    border-radius:16px;
  }

  .ke-home-pickup h2{
    font-size:1.85rem!important;
  }
}


/* ==========================================================
   v0.9.86 HOMEPAGE KUNDENSPRACHE
   ========================================================== */

.ke-card__icon--text{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:54px!important;
  height:28px!important;
  padding:0 9px!important;
  border-radius:999px!important;
  background:#0b1020!important;
  color:#fff!important;
  font-size:9px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  line-height:1!important;
}

@media(max-width:760px){
  .ke-card__icon--text{
    min-width:50px!important;
    height:26px!important;
    font-size:8.5px!important;
  }
}


/* ==========================================================
   v0.9.87 HOMEPAGE SHOP-KATEGORIEN
   ========================================================== */

.ke-cat--wow .ke-cat-icon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:42px!important;
  height:28px!important;
  padding:0 9px!important;
  border-radius:999px!important;
  background:#0b1020!important;
  color:#fff!important;
  font-size:9px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  line-height:1!important;
}

.ke-cat--wow:hover .ke-cat-icon{
  background:#e31b78!important;
}

@media(max-width:760px){
  .ke-cat--wow .ke-cat-icon{
    min-width:38px!important;
    height:26px!important;
    padding:0 8px!important;
    font-size:8px!important;
  }
}


/* ==========================================================
   v0.9.88 HOMEPAGE ABSCHLUSS-FEINSCHLIFF
   ========================================================== */

#shopbereiche,
#leistungen,
#ueber-knall-effekt{
  scroll-margin-top:110px;
}

.ke-home-servicebar__grid > div{
  min-width:0;
}

.ke-home-servicebar__grid strong,
.ke-home-servicebar__grid span{
  overflow-wrap:anywhere;
}

@media(max-width:760px){
  #shopbereiche,
  #leistungen,
  #ueber-knall-effekt{
    scroll-margin-top:84px;
  }
}


/* ==========================================================
   v0.9.89 HOMEPAGE FAQ
   ========================================================== */

.ke-home-faq{
  padding-top:10px!important;
}

.ke-home-faq__list{
  display:grid;
  gap:10px;
  max-width:980px;
}

.ke-home-faq__list details{
  border:1px solid #dfe5ec;
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 24px rgba(11,16,32,.035);
  overflow:hidden;
}

.ke-home-faq__list summary{
  position:relative;
  padding:17px 48px 17px 18px;
  color:#0b1020;
  font-size:13px;
  font-weight:900;
  line-height:1.35;
  cursor:pointer;
  list-style:none;
}

.ke-home-faq__list summary::-webkit-details-marker{
  display:none;
}

.ke-home-faq__list summary:after{
  content:"+";
  position:absolute;
  right:18px;
  top:50%;
  transform:translateY(-50%);
  color:#e31b78;
  font-size:22px;
  font-weight:700;
  line-height:1;
}

.ke-home-faq__list details[open] summary:after{
  content:"–";
}

.ke-home-faq__list details > div{
  padding:0 18px 18px;
  color:#637083;
  font-size:12px;
  line-height:1.6;
}

@media(max-width:760px){
  .ke-home-faq__list summary{
    padding:15px 42px 15px 15px;
    font-size:12.5px;
  }

  .ke-home-faq__list details > div{
    padding:0 15px 15px;
    font-size:11.5px;
  }
}


/* ==========================================================
   v0.9.90 HOMEPAGE SERVICE-CTAS
   ========================================================== */

.ke-service-link{
  display:inline-flex!important;
  align-items:center!important;
  margin-top:12px!important;
  color:#0b1020!important;
  font-size:11px!important;
  font-weight:900!important;
  text-decoration:none!important;
}

.ke-service-link:after{
  content:"→";
  margin-left:7px;
  transition:transform .2s ease;
}

.ke-service-link:hover{
  color:#e31b78!important;
}

.ke-service-link:hover:after{
  transform:translateX(3px);
}

.ke-home-next__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.ke-home-next__grid a{
  display:block;
  padding:16px 17px;
  border:1px solid #dfe5ec;
  border-radius:14px;
  background:#fff;
  color:#0b1020!important;
  text-decoration:none!important;
  box-shadow:0 8px 24px rgba(11,16,32,.03);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}

.ke-home-next__grid a:hover{
  transform:translateY(-2px);
  border-color:#cfd7e2;
  box-shadow:0 12px 28px rgba(11,16,32,.06);
}

.ke-home-next__grid strong,
.ke-home-next__grid span{
  display:block;
}

.ke-home-next__grid strong{
  margin-bottom:4px;
  font-size:12px;
}

.ke-home-next__grid span{
  color:#6b7686;
  font-size:10.5px;
}

@media(max-width:900px){
  .ke-home-next__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:560px){
  .ke-home-next__grid{
    grid-template-columns:1fr;
  }

  .ke-service-link{
    font-size:10.5px!important;
  }
}


/* ==========================================================
   v0.9.91 HOMEPAGE TOP / ASTRA PAGE-TITLE FIX
   ========================================================== */

/* Auf der Startseite keinen Astra-Seitentitel "Start" anzeigen */
body.home .entry-header,
body.front-page .entry-header{
  display:none!important;
}

/* Leeren Abstand zwischen Navigation und eigenem Homepage-Hero entfernen */
body.home #primary,
body.front-page #primary{
  margin-top:0!important;
  padding-top:0!important;
}

body.home .site-main,
body.front-page .site-main,
body.home article.page,
body.front-page article.page,
body.home .entry-content,
body.front-page .entry-content{
  margin-top:0!important;
  padding-top:0!important;
}

body.home .site-content,
body.front-page .site-content{
  padding-top:0!important;
}

@media(max-width:760px){
  body.home #primary,
  body.front-page #primary,
  body.home .site-main,
  body.front-page .site-main{
    margin-top:0!important;
    padding-top:0!important;
  }
}


/* ==========================================================
   v0.9.92 WHATSAPP BUTTON KLEINER
   ========================================================== */

.ke-whatsapp-float,
.ke-whatsapp,
a[href*="wa.me/4921759949090"]{
  transform:scale(.86)!important;
  transform-origin:bottom right!important;
  right:14px!important;
  bottom:14px!important;
}

@media(max-width:760px){
  .ke-whatsapp-float,
  .ke-whatsapp,
  a[href*="wa.me/4921759949090"]{
    transform:scale(.82)!important;
    right:10px!important;
    bottom:10px!important;
  }
}


/* ==========================================================
   v0.9.93 WHATSAPP PILLE KOMPAKTER
   ========================================================== */

/* Weniger Leerraum rechts vom Text, Icon bleibt gut anklickbar */
.ke-whatsapp-float,
.ke-whatsapp,
a[href*="wa.me/4921759949090"]{
  padding-right:11px!important;
}

/* Falls der Textbereich einen eigenen Wrapper hat, ebenfalls kompakter */
.ke-whatsapp-float__text,
.ke-whatsapp__text,
a[href*="wa.me/4921759949090"] .ke-whatsapp-text{
  margin-right:0!important;
  padding-right:0!important;
}

@media(max-width:760px){
  .ke-whatsapp-float,
  .ke-whatsapp,
  a[href*="wa.me/4921759949090"]{
    padding-right:8px!important;
  }
}


/* ==========================================================
   v0.9.94 HOMEPAGE KONTAKT / FOOTER FEINSCHLIFF
   ========================================================== */

.ke-contactband--wow{
  position:relative!important;
  overflow:hidden!important;
}

.ke-contactband--wow:before{
  content:""!important;
  position:absolute!important;
  width:280px!important;
  height:280px!important;
  right:-90px!important;
  bottom:-120px!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(227,27,120,.12),rgba(227,27,120,0) 68%)!important;
  pointer-events:none!important;
}

.ke-contactband__facts{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0 auto 18px!important;
  width:min(1180px,calc(100% - 40px))!important;
  position:relative!important;
  z-index:1!important;
}

.ke-contactband__facts span{
  display:inline-flex!important;
  align-items:center!important;
  min-height:30px!important;
  padding:0 11px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.06)!important;
  color:rgba(255,255,255,.84)!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
}

body.home footer,
body.front-page footer{
  margin-top:0!important;
}

@media(max-width:760px){
  .ke-contactband__facts{
    width:min(100% - 24px,1180px)!important;
    gap:6px!important;
    margin-bottom:14px!important;
  }

  .ke-contactband__facts span{
    min-height:28px!important;
    padding:0 9px!important;
    font-size:9px!important;
  }
}


/* ==========================================================
   v0.9.96 HOMEPAGE ACCESSIBILITY / FEINSCHLIFF
   ========================================================== */

/* Klare Tastatur-Fokusse ohne Maus-Nutzer optisch zu stören */
body.home a:focus-visible,
body.front-page a:focus-visible,
body.home button:focus-visible,
body.front-page button:focus-visible,
body.home summary:focus-visible,
body.front-page summary:focus-visible{
  outline:3px solid #e31b78!important;
  outline-offset:3px!important;
  border-radius:8px;
}

/* FAQ bei Tastaturbedienung sauber erkennbar */
.ke-home-faq__list summary:focus-visible{
  background:#fff7fb!important;
}

/* Bewegungen für Nutzer mit reduzierter Animation abschalten */
@media (prefers-reduced-motion: reduce){
  body.home *,
  body.front-page *{
    scroll-behavior:auto!important;
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:.001ms!important;
  }
}

/* Lange Texte/Links dürfen mobil nicht aus dem Layout laufen */
body.home .ke-section,
body.front-page .ke-section,
body.home .ke-shell,
body.front-page .ke-shell{
  min-width:0;
}

body.home a,
body.front-page a,
body.home p,
body.front-page p{
  overflow-wrap:anywhere;
}


/* ==========================================================
   v0.9.97 HEADER / NAVIGATION / FOOTER FINAL
   ========================================================== */

/* Header kompakter und ruhiger */
.ke-shop-header{
  box-shadow:0 8px 24px rgba(11,16,32,.04)!important;
}

.ke-shop-header__inner{
  min-height:68px!important;
}

/* Hauptnavigation klarer, Hover nur dezent */
.ke-mainnav a{
  position:relative!important;
  text-decoration:none!important;
}

.ke-mainnav a:after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:-6px!important;
  height:2px!important;
  border-radius:999px!important;
  background:#e31b78!important;
  transform:scaleX(0)!important;
  transform-origin:center!important;
  transition:transform .18s ease!important;
}

.ke-mainnav a:hover:after,
.ke-mainnav a:focus-visible:after{
  transform:scaleX(1)!important;
}

/* Saisonleiste optisch kompakter */
.ke-season-strip{
  min-height:42px!important;
}

.ke-season-strip__inner{
  gap:10px!important;
  font-size:11px!important;
}

/* Footer strukturierter */
.site-footer,
footer.site-footer{
  border-top:1px solid #e6eaf0!important;
}

.site-footer .widget-title,
footer.site-footer .widget-title{
  color:#0b1020!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
}

.site-footer a,
footer.site-footer a{
  text-decoration:none!important;
}

.site-footer a:hover,
footer.site-footer a:hover{
  color:#e31b78!important;
}

/* Footer-Abstände etwas kompakter */
.site-footer .footer-widget-area,
footer.site-footer .footer-widget-area{
  padding-top:28px!important;
  padding-bottom:28px!important;
}

/* Mobil */
@media(max-width:760px){
  .ke-shop-header__inner{
    min-height:60px!important;
  }

  .ke-season-strip{
    min-height:38px!important;
  }

  .ke-season-strip__inner{
    gap:7px!important;
    font-size:10px!important;
  }

  .site-footer .footer-widget-area,
  footer.site-footer .footer-widget-area{
    padding-top:22px!important;
    padding-bottom:22px!important;
  }
}


/* ==========================================================
   v0.9.98 FOOTER SERVICE-LEISTE
   ========================================================== */

.ke-footer-service{
  border-top:1px solid #e6eaf0;
  border-bottom:1px solid #e6eaf0;
  background:#f8fafc;
}

.ke-footer-service__inner{
  width:min(1180px,calc(100% - 40px));
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
}

.ke-footer-service__inner a{
  display:block;
  min-width:0;
  padding:16px 18px;
  border-right:1px solid #e6eaf0;
  color:#0b1020!important;
  text-decoration:none!important;
}

.ke-footer-service__inner a:first-child{
  border-left:1px solid #e6eaf0;
}

.ke-footer-service__inner a:hover{
  background:#fff;
}

.ke-footer-service__inner strong,
.ke-footer-service__inner span{
  display:block;
}

.ke-footer-service__inner strong{
  margin-bottom:3px;
  font-size:11px;
  font-weight:900;
}

.ke-footer-service__inner span{
  color:#6e7888;
  font-size:9.5px;
  line-height:1.35;
}

@media(max-width:760px){
  .ke-footer-service__inner{
    width:min(100% - 24px,1180px);
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .ke-footer-service__inner a{
    padding:13px 12px;
    border-bottom:1px solid #e6eaf0;
  }

  .ke-footer-service__inner a:nth-child(odd){
    border-left:1px solid #e6eaf0;
  }

  .ke-footer-service__inner strong{
    font-size:10.5px;
  }

  .ke-footer-service__inner span{
    font-size:9px;
  }
}


/* ==========================================================
   v0.9.99 EVENTFEUERWERKE SEITE
   ========================================================== */

.ke-pagehero__actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px 16px;
  margin-top:18px;
}

.ke-pagehero__note{
  color:rgba(255,255,255,.76);
  font-size:11px;
  font-weight:700;
}

.ke-event-request__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.ke-event-request__grid > div{
  padding:18px;
  border:1px solid #e0e5ec;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 24px rgba(11,16,32,.035);
}

.ke-event-request__grid strong,
.ke-event-request__grid span{
  display:block;
}

.ke-event-request__grid strong{
  margin-bottom:5px;
  color:#0b1020;
  font-size:12px;
  font-weight:900;
}

.ke-event-request__grid span{
  color:#687180;
  font-size:10.5px;
  line-height:1.45;
}

@media(max-width:900px){
  .ke-event-request__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:560px){
  .ke-event-request__grid{
    grid-template-columns:1fr;
  }

  .ke-pagehero__actions{
    align-items:flex-start;
    flex-direction:column;
  }
}


/* ==========================================================
   v1.0.03 SPEZIALEFFEKTE SEITE
   ========================================================== */

.ke-sfx-request__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.ke-sfx-request__grid > div{
  padding:18px;
  border:1px solid #e0e5ec;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 24px rgba(11,16,32,.035);
}

.ke-sfx-request__grid strong,
.ke-sfx-request__grid span{
  display:block;
}

.ke-sfx-request__grid strong{
  margin-bottom:5px;
  color:#0b1020;
  font-size:12px;
  font-weight:900;
}

.ke-sfx-request__grid span{
  color:#687180;
  font-size:10.5px;
  line-height:1.45;
}

@media(max-width:900px){
  .ke-sfx-request__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:560px){
  .ke-sfx-request__grid{
    grid-template-columns:1fr;
  }
}


/* ==========================================================
   v1.0.04 EVENTMODULE & VERMIETUNG
   ========================================================== */

.ke-rental-overview__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.ke-rental-overview__grid > div{
  padding:18px;
  border:1px solid #e0e5ec;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 24px rgba(11,16,32,.035);
}

.ke-rental-overview__grid strong,
.ke-rental-overview__grid span{
  display:block;
}

.ke-rental-overview__grid strong{
  margin-bottom:5px;
  color:#0b1020;
  font-size:12px;
  font-weight:900;
}

.ke-rental-overview__grid span{
  color:#687180;
  font-size:10.5px;
  line-height:1.45;
}

@media(max-width:900px){
  .ke-rental-overview__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:560px){
  .ke-rental-overview__grid{
    grid-template-columns:1fr;
  }
}


/* ==========================================================
   v1.0.05 ÜBER UNS
   ========================================================== */

.ke-about-facts__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.ke-about-facts__grid > div{
  padding:18px;
  border:1px solid #e0e5ec;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 24px rgba(11,16,32,.035);
}

.ke-about-facts__grid strong,
.ke-about-facts__grid span{
  display:block;
}

.ke-about-facts__grid strong{
  margin-bottom:5px;
  color:#0b1020;
  font-size:12px;
  font-weight:900;
}

.ke-about-facts__grid span{
  color:#687180;
  font-size:10.5px;
  line-height:1.45;
}

@media(max-width:900px){
  .ke-about-facts__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:560px){
  .ke-about-facts__grid{
    grid-template-columns:1fr;
  }
}


/* ==========================================================
   v1.0.06 KONTAKTSEITE
   ========================================================== */

.ke-contact-topics__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.ke-contact-topics__grid a{
  display:block;
  padding:18px;
  border:1px solid #e0e5ec;
  border-radius:15px;
  background:#fff;
  color:#0b1020!important;
  text-decoration:none!important;
  box-shadow:0 8px 24px rgba(11,16,32,.035);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.ke-contact-topics__grid a:hover{
  transform:translateY(-2px);
  border-color:#d4dbe5;
  box-shadow:0 12px 28px rgba(11,16,32,.07);
}

.ke-contact-topics__grid strong,
.ke-contact-topics__grid span{
  display:block;
}

.ke-contact-topics__grid strong{
  margin-bottom:5px;
  font-size:12px;
  font-weight:900;
}

.ke-contact-topics__grid span{
  color:#687180;
  font-size:10.5px;
  line-height:1.45;
}

@media(max-width:900px){
  .ke-contact-topics__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:560px){
  .ke-contact-topics__grid{
    grid-template-columns:1fr;
  }
}


/* ==========================================================
   v1.0.07 PARTNERSEITE
   ========================================================== */

.ke-partner-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.ke-partner-card{
  padding:26px;
  border:1px solid #e0e5ec;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 28px rgba(11,16,32,.045);
}

.ke-partner-card__eyebrow{
  margin-bottom:8px;
  color:#e31b78;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
}

.ke-partner-card h2{
  margin:0 0 10px;
  color:#0b1020;
}

.ke-partner-card p{
  color:#687180;
  line-height:1.6;
}

@media(max-width:760px){
  .ke-partner-grid{
    grid-template-columns:1fr;
  }
}


/* v1.0.63 – Seiten-Fertigstellung Phase 1 */
.ke-about-intro__grid{display:grid;grid-template-columns:minmax(280px,420px) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.ke-about-intro__photo img{display:block;width:100%;height:auto;border-radius:22px;box-shadow:0 24px 60px rgba(11,19,34,.15)}
.ke-about-intro__text h2{margin:.45rem 0 1rem}
.ke-about-intro__actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:24px}
.ke-textlink{font-weight:800;text-decoration:none}
.ke-about-qualifications__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:28px}
.ke-about-qualifications__grid article{padding:22px;border:1px solid rgba(21,34,54,.12);border-radius:16px;background:#fff}
.ke-about-qualifications__grid strong,.ke-about-qualifications__grid span{display:block}
.ke-about-qualifications__grid strong{font-size:1.1rem;margin-bottom:7px}
.ke-about-qualifications__grid span{color:#667085;line-height:1.55}
.ke-about-services__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}
.ke-about-services__grid a{display:block;padding:22px;border-radius:16px;background:#fff;border:1px solid rgba(21,34,54,.1);text-decoration:none}
.ke-about-services__grid strong,.ke-about-services__grid span{display:block}
.ke-about-services__grid strong{font-size:1.1rem;color:#111827;margin-bottom:6px}
.ke-about-services__grid span{color:#667085;line-height:1.5}
.ke-about-dark__inner{display:grid;gap:26px}
.ke-about-dark__facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ke-about-dark__facts div{padding:18px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(255,255,255,.05)}
.ke-about-dark__facts strong,.ke-about-dark__facts span{display:block}
.ke-about-dark__facts strong{color:#fff;margin-bottom:5px}
.ke-about-dark__facts span{color:rgba(255,255,255,.72);line-height:1.45}

.ke-full-footer{background:#080f1d;color:#dce4ef;margin-top:0}
.ke-full-footer__grid{display:grid;grid-template-columns:1.35fr repeat(4,minmax(140px,1fr));gap:clamp(24px,4vw,48px);padding-top:54px;padding-bottom:46px}
.ke-full-footer__brand>strong{display:block;color:#fff;font-size:1.5rem;margin-bottom:10px}
.ke-full-footer__brand p{color:#98a7ba;line-height:1.55;margin:.45rem 0}
.ke-full-footer nav>strong{display:block;color:#fff;margin-bottom:13px;font-size:.95rem;text-transform:uppercase;letter-spacing:.06em}
.ke-full-footer nav a,.ke-full-footer__contact a{display:block;color:#c9d3df;text-decoration:none;margin:0 0 9px;line-height:1.45}
.ke-full-footer nav a:hover,.ke-full-footer__contact a:hover{color:#fff}
.ke-full-footer__contact{margin-top:18px}
.ke-full-footer__bottom{border-top:1px solid rgba(255,255,255,.09);color:#8090a5;font-size:.88rem}
.ke-full-footer__bottom .ke-shell{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:18px;padding-bottom:18px}

@media (max-width:980px){
  .ke-about-intro__grid{grid-template-columns:1fr}
  .ke-about-intro__photo{max-width:460px}
  .ke-about-qualifications__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ke-full-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ke-full-footer__brand{grid-column:1/-1}
}
@media (max-width:640px){
  .ke-about-qualifications__grid,.ke-about-services__grid,.ke-about-dark__facts,.ke-full-footer__grid{grid-template-columns:1fr}
}

/* Version 1.0.79: Ganze Angebotskacheln bleiben visuell im bestehenden Design.
   Echte Links benötigen keine JavaScript-Klickhandler. Der Tastaturfokus bleibt
   gut sichtbar; bei reduzierter Bewegung entfällt die Hover-Verschiebung. */
.ke-modules-page a.ke-module-link{display:block;color:inherit;text-decoration:none}
.ke-modules-page a.ke-module-link:focus-visible{outline:3px solid #ad5700;outline-offset:4px}
@media(prefers-reduced-motion:reduce){
 .ke-modules-page a.ke-module-link{transition:none}
 .ke-modules-page a.ke-module-link:hover{transform:none}
}

/* Version 1.0.80: Anlasskarten als echte Links mit bestehender Gestaltung.
   Ein klarer Fokus erleichtert die Bedienung mit Tab und Enter. */
.ke-event-types a.ke-event-card-link{display:block;color:inherit;text-decoration:none}
.ke-event-types a.ke-event-card-link:focus-visible{outline:3px solid #ad5700;outline-offset:4px}
@media(prefers-reduced-motion:reduce){
 .ke-event-types a.ke-event-card-link{transition:none}
 .ke-event-types a.ke-event-card-link:hover{transform:none}
}

/* Version 1.0.87: Sichtbarer Tastaturfokus auf den bestehenden Footerlinks.
   Farben und Typografie bleiben dem vorhandenen Corporate Design zugeordnet. */
.ke-full-footer a:focus-visible,
.ke-footer-service a:focus-visible{outline:3px solid #c99b43;outline-offset:4px;border-radius:3px}

/* Version 1.0.88: Geordneter Mietablauf; erbt Markenschrift und CI-Farben.
   Vier Karten am Desktop, zwei auf mittleren und eine auf kleinen Displays. */
.ke-rental-process__steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.ke-rental-process__steps>li{margin:0;min-width:0}
@media(max-width:1000px){.ke-rental-process__steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ke-rental-process__steps{grid-template-columns:minmax(0,1fr)}}

/* Version 1.0.89: Kontaktformular für Desktop, Tablet und Smartphone.
   Alle Regeln sind auf die eigene Formularklasse begrenzt. Die vorhandenen
   Versteckregeln und die serverseitige Verarbeitung bleiben unverändert.
   16px Feldschrift vermeidet beim Fokussieren das übliche iPhone-Autozoom. */
.ke-contact-request{width:100%;min-width:0}
.ke-contact-request .form-row,.ke-contact-request fieldset,
.ke-contact-request label,.ke-contact-request legend{box-sizing:border-box;min-width:0;max-width:100%;overflow-wrap:anywhere}
.ke-contact-request>.form-row-first{float:left;width:calc(50% - 10px)}
.ke-contact-request>.form-row-last{float:right;width:calc(50% - 10px)}
.ke-contact-request>.form-row-wide{clear:both;width:100%}
.ke-contact-request>.clear{clear:both}
.ke-contact-request .form-row>label{display:block;margin-bottom:6px}
.ke-contact-request input:not([type=checkbox]):not([type=radio]):not([type=hidden]),
.ke-contact-request select,.ke-contact-request textarea{box-sizing:border-box;display:block;width:100%;max-width:100%;min-width:0;font-size:16px;line-height:1.5}
.ke-contact-request input:not([type=checkbox]):not([type=radio]):not([type=hidden]),
.ke-contact-request select{min-height:44px}
.ke-contact-request textarea{resize:vertical;min-height:160px}
.ke-contact-request .ke-event-crosssell>label{box-sizing:border-box;min-height:44px}
.ke-contact-request .ke-event-crosssell input[type=checkbox],
.ke-contact-request .ke-event-crosssell input[type=radio]{width:20px;height:20px;min-width:20px;min-height:20px;vertical-align:middle;margin-right:8px;accent-color:#9a711a}
.ke-contact-request button[type=submit]{min-height:48px;max-width:100%;white-space:normal}
.ke-contact-request input:focus-visible,.ke-contact-request select:focus-visible,
.ke-contact-request textarea:focus-visible,.ke-contact-request button:focus-visible{outline:3px solid #c99b43;outline-offset:3px}
.ke-contact-page .ke-contactcards>*{min-width:0;overflow-wrap:anywhere}
@media(max-width:767px){
 .ke-contact-request>.form-row-first,.ke-contact-request>.form-row-last{float:none;width:100%;clear:both}
 .ke-contact-request .ke-event-crosssell{padding:14px;margin:18px 0}
 .ke-contact-request .ke-event-crosssell>label{padding:12px}
 .ke-contact-request legend{white-space:normal}
 .ke-contact-request button[type=submit]{width:100%}
}

/* Version 1.0.90: Freiraum am Seitenende und Abstand zum Gerätesicherheitsrand.
   Die Bearbeitungsklasse betrifft nur kleine Bildschirme. Ohne JavaScript
   bleibt WhatsApp erreichbar; das vorhandene Mobilmenü hat stets Vorrang. */
.ke-floating-clearance{display:none}
.ke-whatsapp-float:focus-visible{outline:3px solid #c99b43;outline-offset:4px}
@media(max-width:1024px){
 .ke-floating-clearance{display:block;height:calc(80px + env(safe-area-inset-bottom,0px));pointer-events:none}
 .ke-floating-ui{bottom:calc(14px + env(safe-area-inset-bottom,0px))!important;right:calc(12px + env(safe-area-inset-right,0px))!important}
 .ke-whatsapp-float{min-width:48px!important;min-height:48px!important;max-height:none!important}
 .ke-floating-ui.ke-floating-ui--editing,html.ke-menu-open .ke-floating-ui{display:none!important}
}
@media(prefers-reduced-motion:reduce){
 .ke-whatsapp-float{animation:none!important;transition:none!important}
}

/* Version 1.0.91: Beide Schnellaktionen rechts, mit getrennten Positionen.
   Astra behält die Anzeige-/Scrolllogik des Nach-oben-Buttons. Nur Abstände
   und Größe ändern sich. Ohne JavaScript greift eine reservierte Höhe. */
:root{--ke-floating-bottom:calc(16px + env(safe-area-inset-bottom,0px));--ke-floating-height:64px;--ke-floating-right:calc(14px + env(safe-area-inset-right,0px))}
.ke-floating-ui{bottom:var(--ke-floating-bottom)!important;right:var(--ke-floating-right)!important}
#ast-scroll-top{position:fixed;right:var(--ke-floating-right)!important;left:auto!important;bottom:calc(var(--ke-floating-bottom) + var(--ke-floating-height) + 12px)!important;box-sizing:border-box;width:48px;min-width:48px;height:48px;min-height:48px;padding:0;line-height:48px;text-align:center}
#ast-scroll-top:focus-visible{outline:3px solid #c99b43;outline-offset:4px}
@media(max-width:1024px){
 :root{--ke-floating-bottom:calc(14px + env(safe-area-inset-bottom,0px));--ke-floating-right:calc(12px + env(safe-area-inset-right,0px))}
 .ke-floating-clearance{height:calc(var(--ke-floating-bottom) + var(--ke-floating-height) + 72px)}
 html.ke-menu-open #ast-scroll-top{visibility:hidden;pointer-events:none}
}

/* Version 1.0.92: Gut erreichbare Menüpunkte, eigener Scrollbereich und Fokus. */
@media(max-width:921px){
 .ke-mobile-menu__panel{max-height:100vh;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))}
 .ke-mobile-menu__nav a,.ke-mobile-menu__cats a{min-height:44px!important;box-sizing:border-box;overflow-wrap:anywhere}
 .ke-mobile-menu__close{min-width:44px!important;min-height:44px!important}
 .ke-mobile-menu__panel a:focus-visible,.ke-mobile-menu__panel button:focus-visible{outline:3px solid #c99b43;outline-offset:-3px}
}

/* Version 1.0.93: Suchvorschläge bleiben auch auf kleinen Displays erreichbar.
   Preise und lange Artikelbezeichnungen dürfen innerhalb der Treffer umbrechen. */
.ke-live-search{max-height:420px;max-height:min(60dvh,420px);overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box}
.ke-live-search__item,.ke-live-search__all{min-height:44px;box-sizing:border-box}
.ke-live-search__copy,.ke-live-search__copy strong,.ke-live-search__copy small{min-width:0;overflow-wrap:anywhere}
.ke-live-search__all{white-space:normal;overflow-wrap:anywhere}
.ke-live-search__item:focus-visible,.ke-live-search__all:focus-visible{outline:3px solid #c99b43;outline-offset:-3px}
@media(max-width:767px){
 #ke-product-search{font-size:16px}
 .ke-live-search__item{flex-wrap:wrap;gap:6px}
 .ke-live-search__price{max-width:100%;white-space:normal}
}

/* Version 1.0.94: Bedienflächen im vorhandenen klassischen WooCommerce-Warenkorb.
   Die WooCommerce-Tabellenansicht, Mengenprüfung, Gutscheinfunktion und alle
   Berechnungen bleiben erhalten. Regeln betreffen ausschließlich die Warenkorbseite. */
.woocommerce-cart .woocommerce-cart-form .quantity .qty{min-height:44px!important;font-size:16px!important;box-sizing:border-box}
.woocommerce-cart .woocommerce-cart-form .actions .button,
.woocommerce-cart .ke-continue-shopping,
.woocommerce-cart .ke-empty-cart-links a,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button{min-height:44px!important;box-sizing:border-box;white-space:normal!important;overflow-wrap:anywhere}
.woocommerce-cart .ke-continue-shopping,.woocommerce-cart .ke-empty-cart-links a{display:inline-flex!important;align-items:center;justify-content:center;line-height:1.4!important}
.woocommerce-cart .woocommerce-cart-form .product-name{overflow-wrap:anywhere}
.woocommerce-cart .woocommerce-cart-form .actions .coupon input{font-size:16px!important;min-height:44px!important;box-sizing:border-box}
.woocommerce-cart .woocommerce-cart-form input:focus-visible,
.woocommerce-cart .woocommerce-cart-form button:focus-visible,
.woocommerce-cart .ke-continue-shopping:focus-visible,
.woocommerce-cart .ke-empty-cart-links a:focus-visible,
.woocommerce-cart .checkout-button:focus-visible{outline:3px solid #c99b43;outline-offset:3px}
@media(max-width:767px){
 .woocommerce-cart .woocommerce-cart-form .actions .coupon{float:none!important;display:flex!important;flex-wrap:wrap;gap:10px;width:100%;max-width:100%;box-sizing:border-box}
 .woocommerce-cart .woocommerce-cart-form .actions .coupon input{float:none!important;width:100%!important;max-width:100%;min-width:0;flex:1 1 100%;margin:0!important}
 .woocommerce-cart .woocommerce-cart-form .actions .coupon .button{float:none!important;width:100%!important;max-width:100%;margin:0!important}
 .woocommerce-cart .woocommerce-cart-form .actions>button[name="update_cart"]{float:none!important;width:100%!important;margin-top:12px!important}
 .woocommerce-cart .ke-continue-shopping{width:100%!important;margin-top:12px!important}
 .woocommerce-cart .cart-collaterals,.woocommerce-cart .cart-collaterals .cart_totals{min-width:0;max-width:100%;box-sizing:border-box}
 .woocommerce-cart .cart_totals td{overflow-wrap:anywhere}
 .woocommerce-cart .wc-proceed-to-checkout .checkout-button{width:100%!important;min-height:48px!important}
 .woocommerce-cart .ke-empty-cart-links a{font-size:14px!important;min-width:0}
}

/* Version 1.0.95: Lesbarkeit und Bedienung des klassischen Checkouts.
   Keine Veränderung an Zahlungsanbietern, Pflichtfeldern oder Berechnungen.
   Externe Zahlungs-Widgets und deren iframe-Inhalte werden nicht angesprochen. */
body.woocommerce-checkout form.checkout .input-text,
body.woocommerce-checkout form.checkout select{min-height:44px!important;box-sizing:border-box;max-width:100%}
body.woocommerce-checkout form.checkout textarea{box-sizing:border-box;max-width:100%;resize:vertical}
body.woocommerce-checkout #customer_details .select2-container{max-width:100%;min-width:0}
body.woocommerce-checkout #customer_details .select2-selection--single{min-height:44px!important}
body.woocommerce-checkout #customer_details .select2-selection__rendered{line-height:42px!important}
body.woocommerce-checkout #customer_details .select2-selection__arrow{height:42px!important}
body.woocommerce-checkout #payment ul.payment_methods>li>label{display:inline-flex;align-items:center;flex-wrap:wrap;min-height:44px;max-width:100%;font-size:14px!important;line-height:1.5!important;overflow-wrap:anywhere}
body.woocommerce-checkout #payment ul.payment_methods>li>input[type=radio]{width:20px;height:20px;vertical-align:middle;margin-right:8px}
body.woocommerce-checkout #payment div.payment_box,
body.woocommerce-checkout #payment .woocommerce-privacy-policy-text,
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-checkbox-text{font-size:14px!important;line-height:1.6!important;overflow-wrap:anywhere}
body.woocommerce-checkout #payment label.woocommerce-form__label-for-checkbox{display:block;min-height:44px;padding:8px 0;box-sizing:border-box}
body.woocommerce-checkout #payment #terms{width:20px;height:20px;vertical-align:middle}
body.woocommerce-checkout #payment #place_order{min-height:48px!important;max-width:100%;white-space:normal!important;overflow-wrap:anywhere}
body.woocommerce-checkout #order_review .product-name{white-space:normal!important;overflow-wrap:anywhere}
body.woocommerce-checkout form.checkout .input-text:focus-visible,
body.woocommerce-checkout form.checkout select:focus-visible,
body.woocommerce-checkout form.checkout textarea:focus-visible,
body.woocommerce-checkout #payment input:focus-visible,
body.woocommerce-checkout #payment button:focus-visible{outline:3px solid #c99b43;outline-offset:3px}
@media(max-width:1100px){
 body.woocommerce-checkout .ke-checkout-layout{display:block!important}
 body.woocommerce-checkout .ke-checkout-layout__left,body.woocommerce-checkout .ke-checkout-layout__right{width:100%!important;min-width:0;max-width:100%;box-sizing:border-box}
 body.woocommerce-checkout .ke-checkout-layout__right{margin-top:24px!important}
}
@media(max-width:767px){
 body.woocommerce-checkout form.checkout .input-text,body.woocommerce-checkout form.checkout select,body.woocommerce-checkout form.checkout textarea,body.woocommerce-checkout #customer_details .select2-selection__rendered{font-size:16px!important}
 body.woocommerce-checkout .ke-checkout-layout #customer_details .form-row-first,body.woocommerce-checkout .ke-checkout-layout #customer_details .form-row-last{float:none!important;width:100%!important;clear:both!important}
 body.woocommerce-checkout #payment #place_order{width:100%!important}
 body.woocommerce-checkout #order_review,body.woocommerce-checkout #customer_details{min-width:0;max-width:100%;box-sizing:border-box}
}

/* Version 1.0.96: Kundenkonto und Nachweisformular auf kleinen Bildschirmen.
   Änderungen betreffen nur die Darstellung. Anmeldung, Uploadprüfung und
   Fachkundenfreigabe werden durch die vorhandene Serverlogik verarbeitet. */
.woocommerce-account .woocommerce-MyAccount-navigation a{min-height:44px!important;box-sizing:border-box;display:flex;align-items:center;white-space:normal;overflow-wrap:anywhere}
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .ke-account-layout,
.woocommerce-account .ke-access-request__grid>*,
.woocommerce-account .ke-access-card{min-width:0;box-sizing:border-box}
.woocommerce-account .woocommerce-MyAccount-content table td,
.woocommerce-account .woocommerce-MyAccount-content table th{overflow-wrap:anywhere}
.woocommerce-account .woocommerce-MyAccount-content table .button,
.woocommerce-account .woocommerce-button,
.woocommerce-account .ke-access-button,
.woocommerce-account .ke-account-actions a{min-height:44px!important;box-sizing:border-box;white-space:normal!important;max-width:100%;line-height:1.4!important}
.woocommerce-account form .input-text,
.woocommerce-account .ke-access-request__form input[type=text],
.woocommerce-account .ke-access-request__form input[type=date],
.woocommerce-account .ke-access-request__form input[type=file],
.woocommerce-account .ke-access-request__form select{min-height:44px;max-width:100%;min-width:0;box-sizing:border-box}
.woocommerce-account .ke-access-request__form input[type=file]::file-selector-button{min-height:36px;margin-right:8px;cursor:pointer}
.woocommerce-account .ke-access-check{min-height:44px;line-height:1.5;box-sizing:border-box}
.woocommerce-account .ke-access-check input[type=checkbox]{width:20px;height:20px;min-width:20px;vertical-align:middle}
.woocommerce-account .ke-access-request__form small,
.woocommerce-account .ke-access-request__privacy{font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible,
.woocommerce-account .woocommerce-MyAccount-content a:focus-visible,
.woocommerce-account form input:focus-visible,
.woocommerce-account form select:focus-visible,
.woocommerce-account form textarea:focus-visible,
.woocommerce-account form button:focus-visible{outline:3px solid #c99b43;outline-offset:3px}
@media(max-width:767px){
 .woocommerce-account form .input-text,.woocommerce-account .ke-access-request__form input,.woocommerce-account .ke-access-request__form select,.woocommerce-account .ke-access-request__form textarea{font-size:16px!important}
 .woocommerce-account .woocommerce-MyAccount-navigation a{font-size:14px!important;line-height:1.5!important}
 .woocommerce-account .ke-access-request__grid{grid-template-columns:minmax(0,1fr)}
 .woocommerce-account .ke-access-request__form label{font-size:14px}
 .woocommerce-account .woocommerce-MyAccount-content table .button{font-size:14px!important;margin:4px 4px 4px 0}
 .woocommerce-account .ke-access-request__form button[type=submit]{width:100%;min-height:48px}
 .woocommerce-account .ke-account-actions{display:flex;flex-wrap:wrap;gap:10px}
 .woocommerce-account .ke-account-actions a{flex:1 1 100%;text-align:center}
}

/* Version 1.0.97: Produktseiten mit eindeutig getrenntem Varianten-/Kaufbereich.
   WooCommerce behält Auswahl, Preise, Mengenlimits und Berechtigungen. Keine
   Eingriff in die Aktivierung deaktivierter Kaufbuttons oder Produktgalerie. */
.single-product form.variations_form table.variations,
.single-product form.variations_form .single_variation_wrap,
.single-product form.cart table.group_table{width:100%!important;max-width:100%;min-width:0;flex:1 1 100%;box-sizing:border-box}
.single-product form.variations_form .woocommerce-variation-add-to-cart{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.single-product form.cart .quantity .qty{min-height:44px!important;font-size:16px!important}
.single-product form.variations_form select{min-height:44px!important;font-size:16px!important;box-sizing:border-box;max-width:100%;min-width:0}
.single-product form.cart .single_add_to_cart_button{min-height:48px!important;font-size:14px!important;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box}
.single-product .ke-product-facts--single .ke-product-fact{overflow-wrap:anywhere}
.single-product .ke-product-facts--single .ke-product-fact small{font-size:12px;line-height:1.5}
.single-product .ke-product-facts--single .ke-product-fact strong{font-size:15px;line-height:1.5}
.single-product form.cart input:focus-visible,
.single-product form.cart select:focus-visible,
.single-product form.cart button:focus-visible,
.single-product form.cart .reset_variations:focus-visible,
.single-product .woocommerce-tabs ul.tabs a:focus-visible{outline:3px solid #c99b43;outline-offset:3px}
@media(max-width:767px){
 .single-product form.variations_form table.variations td{min-width:0;white-space:normal}
 .single-product form.variations_form table.variations select{width:100%!important}
 .single-product form.variations_form .reset_variations{display:inline-flex;align-items:center;min-height:44px;font-size:14px}
 .single-product form.variations_form table.variations label{font-size:14px!important}
 .single-product .woocommerce-tabs ul.tabs{display:flex;flex-wrap:wrap;gap:8px}
 .single-product .woocommerce-tabs ul.tabs li{max-width:100%;box-sizing:border-box;white-space:normal}
 .single-product .woocommerce-tabs ul.tabs a{display:inline-flex;align-items:center;min-height:44px;box-sizing:border-box;white-space:normal;overflow-wrap:anywhere}
}
@media(max-width:380px){
 .single-product .ke-product-facts--single{grid-template-columns:minmax(0,1fr)}
 .single-product form.cart .single_add_to_cart_button{width:100%!important;flex:1 1 100%!important}
}


/* 1.0.106: Original-Logo proportional und ohne Vergrößerung anzeigen.
   Der weiße Hintergrund gehört zum gelieferten JPG. Die Breite bleibt begrenzt,
   damit Suche, Konto, Warenkorb und Menüschließen ihren Platz behalten. */
.ke-shoptools__brand > .ke-original-logo,
.ke-mobile-menu__brand > .ke-original-logo {
  display:block;
  width:200px;
  max-width:100%;
  height:auto;
  object-fit:contain;
  border-radius:4px;
  background:#fff;
}
.ke-shoptools__brand { min-width:0; }
@media (max-width:1024px) {
  .ke-shoptools__brand > .ke-original-logo { width:160px; }
  .ke-mobile-menu__brand > .ke-original-logo { width:180px; }
  .ke-mobile-menu__brand { min-width:0; }
}
@media (max-width:480px) {
  .ke-shoptools__brand > .ke-original-logo { width:125px; }
  .ke-mobile-menu__brand > .ke-original-logo { width:150px; }
}


/* 1.0.107: Eine Kopfzeile mit Navigation direkt unter der Suchzeile.
   Nur bei aktivem Shop-Kopfbereich die zusätzliche Astra-Zeile und Markenleiste
   ausblenden. Logo, Suche, Konto und Warenkorb behalten ihre bestehenden Regeln. */
.ke-compact-header #masthead,
.ke-compact-header .ke-brandbar { display:none!important; }
.ke-header-nav {
  width:min(100% - 32px,1280px);
  margin:0 auto;
  border-top:1px solid rgba(15,23,42,.1);
}
.ke-header-nav__list {
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:0;
  margin:0;
  padding:0;
}
.ke-header-nav__list > li { position:relative; margin:0; }
.ke-header-nav a {
  display:flex;
  align-items:center;
  min-height:44px;
  padding:10px 13px;
  color:#0b1020;
  font-size:14px;
  font-weight:600;
  text-decoration:none;
}
.ke-header-nav a:hover,
.ke-header-nav a:focus-visible { color:#b41460; background:#f8f2f6; }
.ke-header-nav .current-menu-item > a,
.ke-header-nav a[aria-current="page"] { color:#b41460; }
/* Vorhandene Untermenüs bleiben erreichbar, auch per Tabulator. */
.ke-header-nav .sub-menu {
  list-style:none;
  display:none;
  position:absolute;
  top:100%;
  left:0;
  min-width:220px;
  margin:0;
  padding:6px;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:8px;
  box-shadow:0 12px 24px rgba(15,23,42,.12);
  z-index:10001;
}
.ke-header-nav li:hover > .sub-menu,
.ke-header-nav li:focus-within > .sub-menu { display:block; }
.ke-header-nav .sub-menu .sub-menu { top:0; left:100%; }
@media(max-width:921px) {
  /* Auf Tablet und Smartphone übernimmt weiterhin der vorhandene Menübutton. */
  .ke-header-nav { display:none; }
}


/* 1.0.110: Im Über-uns-Abschnitt das unveränderte Original-Logo zeigen.
   Die vorhandene Spalte bleibt bestehen. Weißer Hintergrund passt zum JPG;
   proportionaler Bildinhalt statt Zuschnitt oder verzerrter Buchstaben. */
.ke-about-number.ke-about-number--logo {
  background:#fff;
  border:1px solid #e7e9ef;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
  padding:10px;
  max-width:100%;
}
.ke-about-number--logo > .ke-original-logo {
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:contain;
}
@media(max-width:1024px) {
  /* In der einspaltigen Ansicht darf das Logo lesbar breiter sein. */
  .ke-about-number.ke-about-number--logo {
    width:220px;
    height:auto;
    min-height:100px;
    padding:16px;
  }
}


/* 1.0.112: Freigegebene KE-Kurzform im vorhandenen Über-uns-Logo-Feld.
   Quadratisch statt gestreckt; das vollständige Kopf-Logo wird nicht verändert. */
.ke-about-number--logo > .ke-monogram {
  display:block;
  width:100%;
  max-width:150px;
  height:auto;
  object-fit:contain;
}
@media(max-width:1024px) {
  .ke-about-number.ke-about-number--monogram {
    width:150px;
    padding:12px;
  }
}


/* 1.0.114: Freigegebene Hüpfburg-Rakete auf der Versand-/Abholseite.
   Illustration und Text bilden am Desktop zwei Spalten. Auf schmalen Geräten
   steht das Bild darüber; Originalproportionen und transparente Ränder bleiben. */
.ke-shipping-info__intro {
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  align-items:center;
  gap:28px;
}
.ke-shipping-info__illustration { display:block; width:100%; }
.ke-shipping-info__illustration img {
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
.ke-shipping-info__intro-copy { min-width:0; }
@media(max-width:760px) {
  .ke-shipping-info__intro { grid-template-columns:1fr; gap:18px; }
  .ke-shipping-info__illustration { width:min(220px,100%); margin:0 auto; }
}

/* 1.0.115: Mietbedingungen und Originalfoto-Galerien. */
.ke-rental-legal-note { clear:both; padding:20px; margin:20px 0; border-left:4px solid #f59e0b; background:#fff8ed; border-radius:8px; overflow-wrap:anywhere; }
.ke-rental-legal-note p:last-child { margin-bottom:0; }
.ke-rental-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.ke-rental-gallery figure { margin:0; min-width:0; }
.ke-rental-gallery figcaption { font-size:.9rem; margin-top:8px; }
.ke-rental-gallery .ke-rental-photo { width:100%; height:auto; object-fit:contain; }
.ke-withdrawal-form { max-width:850px; margin:24px auto; overflow-wrap:anywhere; }
.ke-withdrawal-form input, .ke-withdrawal-form textarea { display:block; width:100%; max-width:100%; }
.ke-withdrawal-form dd { margin-left:0; }
.ke-withdrawal-receipt { white-space:pre-wrap; overflow-wrap:anywhere; font-family:inherit; }
@media(max-width:600px) { .ke-rental-gallery { grid-template-columns:1fr; } .ke-rental-legal-note { padding:15px; } }

/* 1.0.116: Das gelieferte Zuckerwattebild hat 300x300 Pixel.
   Seine Darstellung auf diese Breite begrenzen, um unnötige Vergrößerung zu vermeiden. */
.ke-rental-photo[src*="zuckerwatte-maschine-"] { max-width:300px; margin-left:auto; margin-right:auto; }

/* 1.0.117: Hochformat-Foto der Kaltefunkenmaschinen vollständig zeigen.
   Kachel: begrenzte Höhe; Detailseite: größere Ansicht mit Originalproportionen.
   Die Motivfläche wird weder beschnitten noch gestreckt. */
.ke-rental-card .ke-rental-photo[src*="kaltefunken-einsatz-"] { height:320px; max-height:320px; object-fit:contain; }
.ke-rental-detail .ke-rental-photo[src*="kaltefunken-einsatz-"] { width:auto; max-width:100%; height:auto; max-height:680px; margin-left:auto; margin-right:auto; }
@media(max-width:600px) { .ke-rental-detail .ke-rental-photo[src*="kaltefunken-einsatz-"] { max-height:560px; } }

/* 1.0.118: Aufrechte Anzeige ohne Veränderung der Bildgeometrie.
   Container und Bild behalten auf Smartphone/Tablet dieselben Proportionen. */
.ke-photo-rotate-left { position:relative; width:min(100%,320px); margin:0 auto 18px; overflow:hidden; border-radius:12px; }
.ke-photo-rotate-left picture { display:contents; }
.ke-photo-rotate-left img.ke-rental-photo { position:absolute; left:50%; top:50%; width:var(--ke-photo-width); max-width:none; height:auto; max-height:none; margin:0; transform:translate(-50%,-50%) rotate(-90deg); border-radius:0; }
.ke-event-photo-section figure { margin:20px auto 0; max-width:1000px; text-align:center; }
.ke-event-photo-section .ke-rental-photo { display:block; width:100%; height:auto; max-height:none; margin:0 auto 12px; object-fit:contain; border-radius:12px; }
.ke-event-photo-section--grossfiguren figure { max-width:460px; }
.ke-event-photo-section figcaption { color:#52606d; font-size:14px; line-height:1.5; }

/* 1.0.119: gut bedienbares Pflichtfeld, auch bei schmaler Bildschirmbreite. */
.ke-contact-request .ke-rental-terms-field { clear:both; margin:18px 0; padding:16px; border:1px solid #d6dee3; border-radius:12px; }
.ke-contact-request .ke-rental-terms-field[hidden] { display:none; }
.ke-contact-request .ke-rental-terms-field label { display:flex; align-items:flex-start; gap:12px; line-height:1.6; cursor:pointer; }
.ke-contact-request .ke-rental-terms-field input[type="checkbox"] { flex:0 0 auto; width:22px; height:22px; margin:3px 0 0; }
.ke-contact-request .ke-rental-terms-field a { text-decoration:underline; }

/* 1.0.120: Datums- und Mengenfelder auf Smartphone untereinander. */
.ke-contact-request .ke-rental-period { clear:both; margin:20px 0; padding:16px; border:1px solid #d6dee3; border-radius:12px; min-width:0; }
.ke-contact-request .ke-rental-period[hidden] { display:none; }
.ke-rental-period-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.ke-contact-request .ke-rental-period-grid input { display:block; width:100%; min-width:0; box-sizing:border-box; }
@media(max-width:760px) { .ke-rental-period-grid { grid-template-columns:1fr; } }

/* 1.0.121: Lesbare Zusammenfassung mit Umbruch langer E-Mail-Adressen/Nachrichten. */
.ke-contact-request .ke-rental-review { clear:both; padding:20px; margin:20px 0; border:2px solid #d5b56a; border-radius:14px; background:#fffaf0; color:#252525; }
.ke-contact-request .ke-rental-review[hidden], .ke-contact-request .ke-request-actions [hidden] { display:none!important; }
.ke-rental-review dl { display:grid; grid-template-columns:minmax(140px,1fr) minmax(0,2fr); gap:10px 20px; }
.ke-rental-review dt { font-weight:700; }
.ke-rental-review dd { margin:0; white-space:pre-wrap; overflow-wrap:anywhere; }
.ke-request-actions { clear:both; margin:18px 0; }
@media(max-width:600px) { .ke-rental-review dl { grid-template-columns:1fr; gap:4px; } .ke-rental-review dd { margin-bottom:12px; } .ke-request-actions button, .ke-rental-review button { width:100%; min-height:48px; } }

/* 1.0.122: Hinweise und Anschlusslinks auch auf kleinen Geräten lesbar. */
.ke-contact-request [data-ke-legacy-date][hidden] { display:none!important; }
.ke-inquiry-success p { margin:10px 0 0; }
.ke-inquiry-next { display:flex; flex-wrap:wrap; gap:12px; margin:18px 0 24px; }
.ke-rental-terms-help { margin:10px 0 0; font-size:14px; line-height:1.5; }
@media(max-width:600px) { .ke-inquiry-next { flex-direction:column; } .ke-inquiry-next a { text-align:center; min-height:48px; } }

/* 1.0.123: Serviceinformationen in der bestehenden CI, mobil einspaltig. */
.ke-service-info { max-width:1100px; margin:0 auto; line-height:1.7; }
.ke-service-info-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin:24px 0; }
.ke-service-info-grid article { padding:20px; border:1px solid #d6dee3; border-radius:12px; }
@media(max-width:760px) { .ke-service-info-grid { grid-template-columns:1fr; } }

/* Anfahrt: lange Hinweise umbrechen auch auf schmalen Smartphones. */
.ke-angelcenter-route{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:18px;min-width:0}
.ke-angelcenter-route .ke-btn{max-width:100%;white-space:normal;text-align:center;min-height:44px;box-sizing:border-box}
.ke-angelcenter-route small{display:block;max-width:100%;line-height:1.5;overflow-wrap:anywhere}
@media(max-width:480px){.ke-angelcenter-route .ke-btn{width:100%}}

/* 1.0.127: Kontakt und Mietprüfung lesbar auf Handy und Tablet.
   Ausschließlich KE-Komponenten: Checkout, Astra und Fremdformulare bleiben
   unberührt. Lange Texte dürfen umbrechen; Versteckregeln bleiben erhalten. */
.ke-contact-topics__grid strong{font-size:16px;line-height:1.4}
.ke-contact-topics__grid span{font-size:14px;line-height:1.6}
.ke-contact-topics__grid a:focus-visible{outline:3px solid #c99b43;outline-offset:3px}
.ke-angelcenter-route small{font-size:14px;line-height:1.6}
.ke-contact-request .ke-rental-review{min-width:0;box-sizing:border-box}
.ke-contact-request .ke-rental-review:focus-visible{outline:3px solid #c99b43;outline-offset:3px}
.ke-contact-request .ke-request-actions button,.ke-contact-request .ke-rental-review button{min-height:48px;max-width:100%;box-sizing:border-box;white-space:normal;overflow-wrap:anywhere}
.ke-contact-request .ke-rental-period-grid label{display:block;line-height:1.6}
@media(max-width:480px){
 .ke-contact-request .ke-rental-review{padding:14px}
 .ke-contact-request .ke-request-actions button,.ke-contact-request .ke-rental-review button{width:100%;font-size:16px}
 .ke-contact-request .ke-request-actions button+button{margin-top:10px}
}
/* Die Betriebssystem-Präferenz gilt auch für Kontaktkacheln und Routenbutton. */
@media(prefers-reduced-motion:reduce){
 .ke-contact-topics__grid a,.ke-angelcenter-route .ke-btn{transition:none!important;animation:none!important}
 .ke-contact-topics__grid a:hover,.ke-angelcenter-route .ke-btn:hover{transform:none!important}
}

/* 1.0.171: Standard-404 in der vorhandenen Knall-Effekt-Gestaltung. */
.ke-recovery{max-width:1100px;margin:32px auto;padding:clamp(24px,5vw,64px);border:1px solid #e5dfd2;border-radius:20px;background:linear-gradient(135deg,#fff 55%,#fbf6eb);color:#18212d;text-align:left}
.ke-recovery__eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;color:#8b672d}
.ke-recovery h1{font-size:clamp(34px,5vw,60px);line-height:1.1;margin:18px 0}
.ke-recovery__intro{max-width:700px;font-size:17px;line-height:1.7;color:#53606d}
.ke-recovery__actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}
.ke-recovery__search{max-width:700px;margin:28px 0}
.ke-recovery__search label{display:block;font-weight:700;margin-bottom:8px}
.ke-recovery__search>div{display:flex;gap:10px}
.ke-recovery__search input{min-width:0;flex:1;border:1px solid #b8c1cb;border-radius:10px;font-size:16px;padding:12px;min-height:48px;background:#fff;color:#18212d}
.ke-recovery__search button{min-height:48px}
.ke-recovery__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:28px 0}
.ke-recovery__grid a{display:flex;flex-direction:column;gap:10px;padding:20px;background:#fff;border:1px solid #dedfe1;border-radius:12px;color:#18212d;text-decoration:none;min-width:0;overflow-wrap:anywhere}
.ke-recovery__grid strong{font-size:17px}.ke-recovery__grid span{font-size:14px;line-height:1.6;color:#53606d}
.ke-recovery__contact{font-size:15px;line-height:1.7}.ke-recovery__contact a{text-decoration:underline;color:#76531f}
.ke-recovery :is(a,button,input):focus-visible{outline:3px solid #c99b43;outline-offset:3px}
@media(max-width:760px){.ke-recovery{margin:16px 0;border-radius:12px}.ke-recovery__grid{grid-template-columns:1fr}.ke-recovery__search>div{flex-wrap:wrap}.ke-recovery__search input{flex-basis:100%}.ke-recovery__search button{width:100%}}

/* ============================================================
 * KE Core 1.0.255 – Kundenkonto vor der Anmeldung
 *
 * Die Konto-Navigationsaufteilung (240px / Rest) gilt erst NACH
 * der Anmeldung. Vorher muss das Login-/Registrierungsformular
 * die komplette Breite einnehmen. Damit werden die extrem schmalen
 * Karten und umgebrochenen Buchstaben im Gastzustand behoben.
 * Bewusst auf nicht angemeldete Kontoseiten begrenzt.
 * ============================================================ */
body.woocommerce-account:not(.logged-in) .entry-content > .woocommerce,
body.woocommerce-account:not(.logged-in) .woocommerce {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}
body.woocommerce-account:not(.logged-in) #customer_login {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
body.woocommerce-account:not(.logged-in) #customer_login > .u-column1,
body.woocommerce-account:not(.logged-in) #customer_login > .u-column2 {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  overflow-wrap: normal !important;
}
body.woocommerce-account:not(.logged-in) #customer_login form,
body.woocommerce-account:not(.logged-in) #customer_login .form-row,
body.woocommerce-account:not(.logged-in) #customer_login .input-text {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
body.woocommerce-account:not(.logged-in) #customer_login h2,
body.woocommerce-account:not(.logged-in) #customer_login label {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}
@media (max-width: 760px) {
  body.woocommerce-account:not(.logged-in) #customer_login {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 16px !important;
  }
}


/* ==========================================================
   v0.9.66 MEIN KONTO LOGIN/REGISTRIERUNG EXAKT AUSRICHTEN
   Anmelden und Registrieren sollen auf Desktop wirklich oben bündig
   nebeneinander stehen statt versetzt zu erscheinen.
   ========================================================== */
body.woocommerce-account:not(.logged-in) #customer_login{
  align-items:start!important;
}

body.woocommerce-account:not(.logged-in) #customer_login > .u-column1,
body.woocommerce-account:not(.logged-in) #customer_login > .u-column2{
  align-self:start!important;
  margin:0!important;
  clear:none!important;
  display:flex!important;
  flex-direction:column!important;
}

body.woocommerce-account:not(.logged-in) #customer_login > .u-column1{
  grid-column:1!important;
  grid-row:1!important;
}

body.woocommerce-account:not(.logged-in) #customer_login > .u-column2{
  grid-column:2!important;
  grid-row:1!important;
}

@media(max-width:760px){
  body.woocommerce-account:not(.logged-in) #customer_login > .u-column1,
  body.woocommerce-account:not(.logged-in) #customer_login > .u-column2{
    grid-column:auto!important;
    grid-row:auto!important;
  }
}
