/* === ake-tokens.css === */
/* AKE Design-System — Tokens + Komponenten (generiert aus docs/enterprise/H-design-system.md)
   --ake-*-Prefix, additiv, kollidiert nicht mit Theme/Bootstrap. */

:root {
  /* ── Brand (Markenvorgabe, fix) ───────────────────────── */
  --ake-navy:        #16223f;  /* Primär: Header, Headlines, Primary-Button */
  --ake-navy-800:    #111a30;  /* abgeleitet: Hover-Dunkel, Footer-BG */
  --ake-navy-700:    #233d94;  /* Sekundär-Blau: Links, Akzent-Verläufe (catalog.css) */
  --ake-red:         #e32726;  /* Akzent: CTA, Eyebrow, kritischer Status */
  --ake-red-700:     #c11f1e;  /* abgeleitet: Red-Button-Hover */

  /* ── Ink / Text ───────────────────────────────────────── */
  --ake-ink:         #1c2433;  /* Fließtext stark / Überschriften auf hell */
  --ake-text-2:      #3a4456;  /* Fließtext Standard (Detail-Desc) */
  --ake-muted:       #6b7689;  /* Sekundärtext, Captions, Meta */
  --ake-placeholder: #9aa3b2;  /* Input-Placeholder (catalog.css:35) */
  --ake-on-navy:     #ffffff;  /* Text auf Navy/Rot */
  --ake-on-navy-mut: #b9c2d6;  /* abgeleitet: gedämpfter Text auf Navy (Footer) */

  /* ── Surfaces ─────────────────────────────────────────── */
  --ake-card:        #ffffff;  /* Karten, Panels */
  --ake-surface:     #f6f8fb;  /* Seiten-Hintergrund / Sektion alt */
  --ake-surface-2:   #eef2f8;  /* abgeleitet: Hover-Fläche Chips (catalog.css:47) */
  --ake-img-bg:      #f3f6fb;  /* Media-Platzhalter hinter Produktbildern */

  /* ── Borders / Lines ──────────────────────────────────── */
  --ake-line:        #e7ecf3;  /* Standard-Trennlinie / Card-Border */
  --ake-line-strong: #d4dce8;  /* Card-Hover-Border (catalog.css:68) */

  /* ── Neutrals (abgeleitete, vollständige Grauleiter) ──── */
  --ake-gray-50:  #f6f8fb;
  --ake-gray-100: #eef2f8;
  --ake-gray-200: #e7ecf3;
  --ake-gray-300: #d4dce8;
  --ake-gray-400: #9aa3b2;
  --ake-gray-500: #6b7689;
  --ake-gray-700: #3a4456;
  --ake-gray-900: #1c2433;

  /* ── Semantik (success real aus catalog; rest abgeleitet, AA-geprüft) ── */
  --ake-success:      #25a55a;  /* „Angebot anfragen" / positiv (catalog.css) */
  --ake-success-700:  #1e8c4b;  /* success hover (catalog.css) */
  --ake-success-bg:   #e7f6ee;  /* abgeleitet: Success-Banner-BG */
  --ake-warning:      #b8860b;  /* abgeleitet: AA auf weiß (Hinweis) */
  --ake-warning-bg:   #fdf3e2;
  --ake-danger:       #c11f1e;  /* Fehler / Pflicht — bewusst dunkler als Brand-Rot für AA-Text */
  --ake-danger-bg:    #fdecea;
  --ake-info:         #233d94;  /* neutral-informativ = navy-700 */
  --ake-info-bg:      #eaf0fb;

  /* ── Effekt-Tokens ────────────────────────────────────── */
  --ake-focus-ring:   0 0 0 3px rgba(22,34,63,.18);     /* Soft-Ring auf Inputs */
  --ake-focus-outline: 2px solid var(--ake-navy);        /* Hard-Outline */
  --ake-overlay:      rgba(17,26,48,.55);                /* Scrim/Drawer/Lightbox */
  --ake-tint-navy:    rgba(22,34,63,.10);                /* Soft-BG (Stat-Tiles) */
}

:root {
  --ake-font:        'Poppins', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --ake-font-num:    var(--ake-font);   /* Tabular für KPI-Stats via font-variant-numeric */

  --ake-fw-regular:  400;
  --ake-fw-medium:   500;
  --ake-fw-semibold: 600;
  --ake-fw-bold:     700;

  /* Type Scale (rem @16px base, fluid via clamp wo sinnvoll) */
  /* px statt rem: Theme setzt html{font-size:10px} -> rem-Tokens wuerden 62,5% rendern. */
  --ake-fs-display: clamp(36px, 1.85vw + 29px, 56px);  /* 36->56  Hero */
  --ake-fs-h1:      clamp(30px, 0.93vw + 26.6px, 40px); /* 30->40  Seiten-H1 */
  --ake-fs-h2:      clamp(24px, 0.74vw + 21.3px, 32px); /* 24->32  Sektion */
  --ake-fs-h3:      22px;  /* Card-Group / Sub */
  --ake-fs-h4:      18px;  /* Card-Title gross */
  --ake-fs-lg:      16px;  /* Lead / grosser Body */
  --ake-fs-base:    15px;  /* Body Standard */
  --ake-fs-sm:      14px;  /* Sekundaer / Tabellen */
  --ake-fs-xs:      13px;  /* Meta / Chips */
  --ake-fs-2xs:     11.5px; /* Eyebrow / Badge */

  --ake-lh-tight:   1.18;  /* Display/H1 (catalog:115) */
  --ake-lh-snug:    1.4;   /* H2–H4, Card-Titles (catalog:77) */
  --ake-lh-normal:  1.6;   /* Body kurz */
  --ake-lh-relaxed: 1.75;  /* Fließtext lang (catalog:118) */

  --ake-ls-eyebrow: 0.09em;  /* Versalien-Eyebrow (catalog:76) */
  --ake-ls-tight:   -0.01em; /* große Headlines */
}

.ake-eyebrow { font: var(--ake-fw-semibold) var(--ake-fs-2xs)/1 var(--ake-font);
  letter-spacing: var(--ake-ls-eyebrow); text-transform: uppercase; color: var(--ake-red); }
.ake-h2 { font: var(--ake-fw-bold) var(--ake-fs-h2)/var(--ake-lh-snug) var(--ake-font); color: var(--ake-navy); }
.ake-body { font: var(--ake-fw-regular) var(--ake-fs-base)/var(--ake-lh-relaxed) var(--ake-font); color: var(--ake-text-2); }

:root {
  --ake-sp-0:  0;
  --ake-sp-1:  4px;
  --ake-sp-2:  8px;
  --ake-sp-3:  12px;
  --ake-sp-4:  16px;
  --ake-sp-5:  20px;
  --ake-sp-6:  24px;
  --ake-sp-8:  32px;
  --ake-sp-10: 40px;
  --ake-sp-12: 48px;
  --ake-sp-16: 4rem;     /* 64 */
  --ake-sp-20: 5rem;     /* 80 */
  --ake-sp-24: 6rem;     /* 96 */

  /* Layout */
  --ake-container:    1440px;          /* aus ake-overrides.css */
  --ake-container-pad: var(--ake-sp-6);/* 24, mobil; desktop 28 via .akeh-wrap */
  --ake-gutter:        var(--ake-sp-6);/* Grid-Gap Standard */
  --ake-section-y:     clamp(3rem, 2rem + 4vw, 6rem); /* 48→96 vertikaler Sektionsabstand */
}

.ake-container { max-width: var(--ake-container); margin-inline: auto; padding-inline: clamp(1rem, 4vw, 28px); }
.ake-section { padding-block: var(--ake-section-y); }
.ake-stack > * + * { margin-top: var(--ake-sp-4); }  /* vertikaler Rhythmus */

:root {
  /* Radius (aus catalog.css beobachtet) */
  --ake-r-sm:   8px;   /* Buttons, kleine Tags */
  --ake-r-md:   10px;  /* Inputs */
  --ake-r-lg:   12px;  /* Karten */
  --ake-r-xl:   14px;  /* große Panels / Galerie */
  --ake-r-pill: 999px; /* Chips, Filter-Pills */

  /* Elevation */
  --ake-sh-1: 0 1px 2px rgba(22,34,63,.06);
  --ake-sh-2: 0 8px 20px rgba(22,34,63,.10);              /* CTA/Quote-Card */
  --ake-sh-3: 0 16px 36px rgba(22,34,63,.13);             /* Card-Hover (catalog:68) */
  --ake-sh-pop: 0 24px 60px rgba(17,26,48,.20);           /* Mega-Menü / Drawer */

  /* Z-Index-Skala (kollisionsfrei mit RevSlider/Bootstrap) */
  --ake-z-base:     1;
  --ake-z-sticky:   1000;  /* #akeh */
  --ake-z-dropdown: 1010;  /* akeh-drop / mega */
  --ake-z-scrim:    1080;
  --ake-z-drawer:   1090;
  --ake-z-search:   1095;

  /* Motion */
  --ake-dur-fast:  .12s;
  --ake-dur-base:  .18s;
  --ake-dur-slow:  .22s;
  --ake-ease:      cubic-bezier(.4, 0, .2, 1);
  --ake-ease-out:  cubic-bezier(.16, 1, .3, 1);
}

.ake-btn {
  display: inline-flex; align-items: center; gap: var(--ake-sp-2);
  font: var(--ake-fw-semibold) var(--ake-fs-xs)/1 var(--ake-font);
  padding: 11px var(--ake-sp-4); border-radius: var(--ake-r-sm);
  border: 1px solid transparent; cursor: pointer; text-decoration: none;
  min-height: 40px; transition: background var(--ake-dur-base) var(--ake-ease),
    color var(--ake-dur-base), border-color var(--ake-dur-base),
    transform var(--ake-dur-fast), box-shadow var(--ake-dur-base);
}
.ake-btn:active { transform: translateY(1px); }
.ake-btn:focus-visible { outline: var(--ake-focus-outline); outline-offset: 2px; }

/* Primary — Hauptaktion (Navy) */
.ake-btn--primary { background: var(--ake-navy); color: #fff; }
.ake-btn--primary:hover { background: var(--ake-navy-800); }

/* Accent — Conversion-CTA (Rot), entspricht .akeh-cta */
.ake-btn--accent { background: var(--ake-red); color: #fff; box-shadow: var(--ake-sh-2); }
.ake-btn--accent:hover { background: var(--ake-red-700); }

/* Secondary — Outline */
.ake-btn--secondary { background: #fff; color: var(--ake-navy); border-color: var(--ake-line-strong); }
.ake-btn--secondary:hover { border-color: var(--ake-navy); background: var(--ake-surface-2); }

/* Ghost — tertiär */
.ake-btn--ghost { background: transparent; color: var(--ake-navy); }
.ake-btn--ghost:hover { background: var(--ake-surface-2); }

/* Success — „Angebot anfragen" (aus catalog .ake-quote) */
.ake-btn--success { background: var(--ake-success); color: #fff; box-shadow: 0 8px 20px rgba(37,165,90,.28); }
.ake-btn--success:hover { background: var(--ake-success-700); }

/* Größen */
.ake-btn--lg { padding: 15px var(--ake-sp-6); font-size: var(--ake-fs-base); border-radius: var(--ake-r-md); min-height: 48px; }
.ake-btn--sm { padding: 8px var(--ake-sp-3); min-height: 34px; }

/* States */
.ake-btn[disabled], .ake-btn--disabled { opacity: .5; pointer-events: none; }
.ake-btn--block { width: 100%; justify-content: center; }

.ake-card {
  background: var(--ake-card); border: 1px solid var(--ake-line);
  border-radius: var(--ake-r-lg); overflow: hidden; position: relative;
  transition: transform var(--ake-dur-slow) var(--ake-ease),
    box-shadow var(--ake-dur-slow) var(--ake-ease), border-color var(--ake-dur-slow);
}
.ake-card:hover { transform: translateY(-5px); box-shadow: var(--ake-sh-3); border-color: var(--ake-line-strong); }
/* roter Top-Accent beim Hover (catalog-Pattern) */
.ake-card::before { content:""; position:absolute; inset:0 0 auto 0; height:3px;
  background: var(--ake-red); transform: scaleX(0); transform-origin: left;
  transition: transform var(--ake-dur-slow) var(--ake-ease); }
.ake-card:hover::before { transform: scaleX(1); }

.ake-card-media { display:block; aspect-ratio: 1/1; background: var(--ake-img-bg);
  border-bottom: 1px solid var(--ake-line); overflow: hidden; }
.ake-card-media img { width:100%; height:100%; object-fit: cover;
  transition: transform var(--ake-dur-slow) var(--ake-ease); }
.ake-card:hover .ake-card-media img { transform: scale(1.045); }
.ake-card-body { padding: var(--ake-sp-5); }       /* 20 */
.ake-card-title { margin: 0 0 var(--ake-sp-3); font: var(--ake-fw-semibold) var(--ake-fs-h4)/1.4 var(--ake-font); color: var(--ake-navy); }
.ake-card-text { font: 400 var(--ake-fs-sm)/1.65 var(--ake-font); color: var(--ake-text-2); }

.ake-stat { background: var(--ake-tint-navy); border-radius: var(--ake-r-lg); padding: var(--ake-sp-6); }
.ake-stat-num { font: 700 clamp(1.75rem,1.2rem+1.5vw,2.5rem)/1.05 var(--ake-font);
  color: var(--ake-navy); font-variant-numeric: tabular-nums; }
.ake-stat-label { font: 500 var(--ake-fs-sm)/1.4 var(--ake-font); color: var(--ake-muted); }

.ake-field { display: grid; gap: var(--ake-sp-2); margin-bottom: var(--ake-sp-4); }
.ake-label { font: 600 var(--ake-fs-sm)/1.3 var(--ake-font); color: var(--ake-navy); }
.ake-label .req { color: var(--ake-danger); margin-left: 2px; }

.ake-input, .ake-textarea, .ake-select {
  width: 100%; padding: 12px var(--ake-sp-4); border: 1px solid var(--ake-line);
  border-radius: var(--ake-r-md); background: #fff; color: var(--ake-ink);
  font: 400 var(--ake-fs-sm)/1.4 var(--ake-font);
  transition: border-color var(--ake-dur-base), box-shadow var(--ake-dur-base);
}
.ake-input::placeholder { color: var(--ake-placeholder); }
.ake-input:focus, .ake-textarea:focus, .ake-select:focus {
  outline: none; border-color: var(--ake-navy); box-shadow: var(--ake-focus-ring);
}
.ake-textarea { min-height: 120px; resize: vertical; }

/* Validation */
.ake-field--error .ake-input { border-color: var(--ake-danger); }
.ake-field--error .ake-input:focus { box-shadow: 0 0 0 3px var(--ake-danger-bg); }
.ake-error { font: 500 var(--ake-fs-xs)/1.4 var(--ake-font); color: var(--ake-danger); }
.ake-hint  { font: 400 var(--ake-fs-xs)/1.4 var(--ake-font); color: var(--ake-muted); }
.ake-field--success .ake-input { border-color: var(--ake-success); }

/* Checkbox/Consent (KVKK/DSGVO) */
.ake-check { display: flex; gap: var(--ake-sp-2); align-items: flex-start;
  font: 400 var(--ake-fs-xs)/1.5 var(--ake-font); color: var(--ake-muted); }
.ake-check input { width: 18px; height: 18px; accent-color: var(--ake-navy); margin-top: 1px; }

.ake-table { width: 100%; border-collapse: collapse; font: 400 var(--ake-fs-sm)/1.5 var(--ake-font); }
.ake-table caption { text-align: left; font: 600 var(--ake-fs-base) var(--ake-font); color: var(--ake-navy); padding-bottom: var(--ake-sp-3); }
.ake-table th { text-align: left; font-weight: 600; color: #fff; background: var(--ake-navy);
  padding: var(--ake-sp-3) var(--ake-sp-4); }
.ake-table th[scope="row"] { background: transparent; color: var(--ake-navy); border-bottom: 1px solid var(--ake-line); }
.ake-table td { padding: var(--ake-sp-3) var(--ake-sp-4); color: var(--ake-text-2);
  border-bottom: 1px solid var(--ake-line); }
.ake-table tbody tr:nth-child(even) td { background: var(--ake-surface); }   /* Zebra */
.ake-table tbody tr:hover td { background: var(--ake-surface-2); }
.ake-table--num td { font-variant-numeric: tabular-nums; text-align: right; }

/* Mobile (<768): horizontal scroll-Wrapper, kein Layout-Bruch */
.ake-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; border: 1px solid var(--ake-line); border-radius: var(--ake-r-lg); }

.ake-badge { display:inline-flex; align-items:center; gap: var(--ake-sp-1);
  font: 600 var(--ake-fs-2xs)/1 var(--ake-font); letter-spacing: .04em; text-transform: uppercase;
  padding: 5px var(--ake-sp-2); border-radius: var(--ake-r-pill); }
.ake-badge--brand   { background: var(--ake-info-bg);    color: var(--ake-navy-700); }
.ake-badge--accent  { background: #fdecea;               color: var(--ake-red-700); }
.ake-badge--success { background: var(--ake-success-bg); color: var(--ake-success-700); }
.ake-badge--warning { background: var(--ake-warning-bg); color: var(--ake-warning); }
.ake-badge--neutral { background: var(--ake-surface-2);  color: var(--ake-muted); }
.ake-badge--solid   { background: var(--ake-navy);       color:#fff; }

/* Norm-/Zertifikat-Badge — NUR mit verifiziertem Inhalt füllen (CE, TS EN 81-xx). */
.ake-badge--cert    { background:#fff; border:1px solid var(--ake-line-strong); color: var(--ake-navy);
  text-transform: none; letter-spacing: 0; padding: 6px var(--ake-sp-3); }

.ake-chip { display:inline-flex; gap: var(--ake-sp-2); align-items:center;
  padding: 8px var(--ake-sp-4); border:1px solid var(--ake-line); border-radius: var(--ake-r-pill);
  background:#fff; color: var(--ake-navy); font:500 var(--ake-fs-xs) var(--ake-font); cursor:pointer;
  transition: border-color var(--ake-dur-base), background var(--ake-dur-base); }
.ake-chip:hover { border-color: var(--ake-navy); background: var(--ake-surface-2); }
.ake-chip.is-active { background: var(--ake-navy); border-color: var(--ake-navy); color:#fff; }
.ake-chip .n { font-size: var(--ake-fs-2xs); color: var(--ake-muted); font-weight: 600; }
.ake-chip.is-active .n { color: var(--ake-on-navy-mut); }

#akeh { position: sticky; top: 0; z-index: var(--ake-z-sticky);
  background: #fff; border-bottom: 1px solid var(--ake-line); font-family: var(--ake-font); }
#akeh .akeh-wrap { max-width: var(--ake-container); margin-inline:auto; padding: 0 28px;
  display:flex; align-items:center; gap: var(--ake-sp-3); }

/* Top-Bar */
.akeh-top { background: var(--ake-navy); color: var(--ake-on-navy); font-size: var(--ake-fs-xs); }
.akeh-top a { color: var(--ake-on-navy); }
.akeh-lang .on { color: var(--ake-on-navy); font-weight:600; }
.akeh-lang a  { color: var(--ake-on-navy-mut); }

/* Hauptmenü */
.akeh-menu { display:flex; gap:0; flex-wrap:nowrap; list-style:none; margin:0; padding:0; }
.akeh-menu > li > a { display:inline-flex; align-items:center; gap:6px;
  padding: 10px 9px; font: 600 12.5px/1 var(--ake-font); color: var(--ake-navy);
  letter-spacing:.1px; position:relative; text-decoration:none; }
.akeh-menu > li > a::after { content:""; position:absolute; left:9px; right:9px; bottom:4px; height:2px;
  background: var(--ake-red); transform: scaleX(0); transform-origin:left;
  transition: transform var(--ake-dur-base) var(--ake-ease); }
.akeh-menu > li:hover > a::after,
.akeh-menu > li > a[aria-current="page"]::after { transform: scaleX(1); }

/* Dropdown + Mega */
.akeh-drop { position:absolute; z-index: var(--ake-z-dropdown);
  background:#fff; border:1px solid var(--ake-line); border-radius: var(--ake-r-lg);
  box-shadow: var(--ake-sh-pop); padding: var(--ake-sp-3);
  opacity:0; visibility:hidden; transform: translateY(6px);
  transition: opacity var(--ake-dur-base), transform var(--ake-dur-base), visibility var(--ake-dur-base); }
.akeh-menu > li:hover > .akeh-drop,
.akeh-menu > li:focus-within > .akeh-drop { opacity:1; visibility:visible; transform: translateY(0); }
.akeh-drop a { display:block; padding: var(--ake-sp-2) var(--ake-sp-3); border-radius: var(--ake-r-sm);
  color: var(--ake-text-2); text-decoration:none; }
.akeh-drop a:hover { background: var(--ake-surface-2); color: var(--ake-navy); }

.akeh-mega { display:grid; grid-template-columns: repeat(2, minmax(220px,1fr)); gap: var(--ake-sp-6);
  min-width: 560px; padding: var(--ake-sp-5); }
.akeh-mega-title { font: 600 var(--ake-fs-2xs)/1 var(--ake-font); letter-spacing:.09em;
  text-transform:uppercase; color: var(--ake-red); margin-bottom: var(--ake-sp-3); }
.akeh-mega a b { display:block; font: 600 var(--ake-fs-sm) var(--ake-font); color: var(--ake-navy); }
.akeh-mega a small { display:block; font: 400 var(--ake-fs-xs) var(--ake-font); color: var(--ake-muted); margin-top:2px; }

.akeh-scrim { position:fixed; inset:0; background: var(--ake-overlay); z-index: var(--ake-z-scrim);
  opacity:0; visibility:hidden; transition: opacity var(--ake-dur-base); }
.akeh-scrim.is-open { opacity:1; visibility:visible; }
.akeh-drawer { position:fixed; top:0; right:0; height:100dvh; width: min(360px, 88vw);
  background:#fff; z-index: var(--ake-z-drawer); box-shadow: var(--ake-sh-pop);
  transform: translateX(100%); transition: transform var(--ake-dur-slow) var(--ake-ease-out);
  overflow-y:auto; }
.akeh-drawer.is-open { transform: translateX(0); }
.akeh-dtog[aria-expanded="true"] .ar { transform: rotate(180deg); }

:root {
  --ake-bp-sm: 375px;   /* Phone (Basis-Mobil) */
  --ake-bp-md: 768px;   /* Tablet portrait */
  --ake-bp-lg: 1024px;  /* Tablet landscape / kleiner Desktop — Nav-Switch */
  --ake-bp-xl: 1440px;  /* Desktop / Container-Max */
}

/* Mobile-first; Mega-Menü erst ab lg */
.akeh-nav, .akeh-actions .akeh-cta { display:none; }
.akeh-burger { display:inline-flex; }
@media (min-width:1366px){
  .akeh-nav { display:block; }
  .akeh-actions .akeh-cta { display:inline-flex; }
  .akeh-burger { display:none; }
}
.ake-grid { display:grid; grid-template-columns:1fr; gap: var(--ake-gutter); }
@media (min-width:768px){ .ake-grid{ grid-template-columns:repeat(2,1fr);} }
@media (min-width:1024px){ .ake-grid{ grid-template-columns:repeat(3,1fr);} }
@media (min-width:1440px){ .ake-grid--4{ grid-template-columns:repeat(4,1fr);} }

@media (prefers-reduced-motion: reduce){
  *, *::before, *::after { animation-duration:.001ms !important; animation-iteration-count:1 !important;
    transition-duration:.001ms !important; scroll-behavior:auto !important; }
  .ake-card:hover { transform:none; }
}
/* === ake-home-v16.css === */
/* AKE Enterprise-Homepage — Sektions-Layouts (nutzt ake-tokens.css) */
.akeh-home { font-family: var(--ake-font); }
.akeh-home img { max-width: 100%; }

/* HERO */
.ah-hero { position: relative; min-height: clamp(460px, 70vh, 640px); display: flex; align-items: center; overflow: hidden; background: var(--ake-navy-800); }
.ah-hero-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ah-hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(14,22,44,.88) 0%, rgba(14,22,44,.58) 50%, rgba(14,22,44,.18) 100%); }
.ah-hero-inner { position: relative; z-index: 2; max-width: var(--ake-container, 1200px); margin-inline: auto; padding: clamp(2rem,5vw,4rem) clamp(1rem,4vw,28px); width: 100%; }
.ah-hero-eyebrow { color: #ff6b6a; font-size: var(--ake-fs-2xs); font-weight: 600; letter-spacing: .12em; text-transform: uppercase; margin: 0 0 16px; }
.ah-hero h1 { color: #fff; font-size: var(--ake-fs-display); font-weight: 700; line-height: 1.14; letter-spacing: -.01em; margin: 0 0 18px; max-width: 16ch; }
.ah-hero-sub { color: #d6deec; font-size: var(--ake-fs-lg); line-height: 1.6; margin: 0 0 28px; max-width: 60ch; }
.ah-hero-cta { display: flex; gap: 14px; flex-wrap: wrap; margin-bottom: 30px; }
.ah-trust-inline { display: flex; flex-wrap: wrap; gap: 10px 22px; color: #aebbd4; font-size: var(--ake-fs-sm); font-weight: 500; }
.ah-trust-inline span { display: inline-flex; align-items: center; gap: 8px; }
.ah-trust-inline span::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--ake-red); }

/* Buttons (Fallback falls Tokens .ake-btn nicht greift) */
.ah-btn { display: inline-flex; align-items: center; gap: 9px; padding: 14px 26px; border-radius: 10px; font-size: var(--ake-fs-base); font-weight: 600; text-decoration: none; border: 1.5px solid transparent; transition: transform .18s, background .18s, border-color .18s; }
.ah-btn:hover { transform: translateY(-2px); }
.ah-btn--primary { background: var(--ake-red); color: #fff; }
.ah-btn--primary:hover { background: var(--ake-red-700); color: #fff; }
.ah-btn--ghost { background: rgba(255,255,255,.08); color: #fff; border-color: rgba(255,255,255,.45); }
.ah-btn--ghost:hover { background: rgba(255,255,255,.16); color: #fff; border-color: #fff; }
.ah-btn:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }

/* Sektion-Rahmen */
.ah-section { padding: var(--ake-section-y, clamp(48px,2rem+4vw,96px)) 0; }
.ah-wrap { max-width: var(--ake-container, 1200px); margin-inline: auto; padding-inline: clamp(1rem,4vw,28px); }
.ah-head { max-width: 720px; margin: 0 0 38px; }
.ah-eyebrow { display: block; color: var(--ake-red-700); font-size: var(--ake-fs-2xs); font-weight: 600; letter-spacing: .09em; text-transform: uppercase; margin-bottom: 10px; }
.ah-h2 { font-size: var(--ake-fs-h2); font-weight: 700; color: var(--ake-navy); line-height: 1.2; margin: 0 0 12px; }
.ah-lead { font-size: var(--ake-fs-lg); color: var(--ake-text-2); line-height: 1.6; margin: 0; }
.ah-center { text-align: center; margin-inline: auto; }

/* TRUST-METRICS */
.ah-metrics { background: var(--ake-navy); }
.ah-metric-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 0; }
.ah-metric { text-align: center; padding: 34px 14px 30px; border-right: 1px solid rgba(255,255,255,.10); }
.ah-metric:last-child { border-right: 0; }
.ah-metric-v { font-size: clamp(30px,1.8vw + 23px,42px); font-weight: 700; color: #fff; line-height: 1.05; }
.ah-metric-l { font-size: var(--ake-fs-sm); color: #aebbd4; margin-top: 7px; line-height: 1.35; }

/* CARD-GRIDS (Produkte/Branchen) */
.ah-grid-4 { display: grid; grid-template-columns: repeat(4,1fr); gap: 20px; }
.ah-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--ake-line); border-radius: 14px; padding: 24px; text-decoration: none; transition: transform .2s, box-shadow .2s, border-color .2s; }
.ah-card:hover { transform: translateY(-4px); box-shadow: 0 16px 36px -14px rgba(22,34,63,.22); border-color: var(--ake-line-strong); }
.ah-card-ico { width: 46px; height: 46px; border-radius: 11px; background: var(--ake-tint-navy); color: var(--ake-navy); display: flex; align-items: center; justify-content: center; margin-bottom: 16px; }
.ah-card-ico svg { width: 24px; height: 24px; }
.ah-card h3 { font-size: var(--ake-fs-h4); font-weight: 600; color: var(--ake-navy); margin: 0 0 7px; line-height: 1.3; }
.ah-card p { font-size: var(--ake-fs-sm); color: var(--ake-muted); line-height: 1.55; margin: 0 0 16px; flex: 1; }
.ah-card-link { font-size: var(--ake-fs-sm); font-weight: 600; color: var(--ake-red); display: inline-flex; align-items: center; gap: 6px; }
.ah-card:hover .ah-card-link { gap: 10px; }

/* WARUM (4 Säulen, weiß) */
.ah-why { background: var(--ake-surface); }
.ah-why-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 24px; }
.ah-why-item { text-align: left; }
.ah-why-ico { width: 50px; height: 50px; border-radius: 12px; background: #fff; border: 1px solid var(--ake-line); color: var(--ake-red); display: flex; align-items: center; justify-content: center; margin-bottom: 16px; }
.ah-why-ico svg { width: 26px; height: 26px; }
.ah-why-item h3 { font-size: var(--ake-fs-h4); font-weight: 600; color: var(--ake-navy); margin: 0 0 8px; }
.ah-why-item p { font-size: var(--ake-fs-sm); color: var(--ake-text-2); line-height: 1.6; margin: 0; }

/* REFERENZEN */
.ah-ref-index { padding-top: clamp(32px, 4vw, 48px); }
.ah-ref-top { display: grid; grid-template-columns: minmax(0, .85fr) minmax(360px, 1.15fr); gap: 24px; align-items: start; margin-bottom: 28px; }
.ah-ref-top .ah-head { margin: 0; }
.ah-ref-controls { min-width: 0; }
.ah-ref-controls .ake-search { margin: 0 0 14px !important; }
.ah-ref-controls .ake-filters { margin: 0; }
.ah-ref-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }
.ah-ref { border: 1px solid var(--ake-line); border-radius: 14px; overflow: hidden; background: #fff; }
.ah-ref-img { aspect-ratio: 4/3; background: var(--ake-img-bg); overflow: hidden; }
.ah-ref-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.ah-ref:hover .ah-ref-img img { transform: scale(1.05); }
.ah-ref-body { padding: 18px 20px; }
.ah-ref-meta { font-size: var(--ake-fs-2xs); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--ake-red); }
.ah-ref-body h3 { font-size: var(--ake-fs-h4); font-weight: 600; color: var(--ake-navy); margin: 6px 0 0; line-height: 1.3; }

/* CTA-Schluss (#teklif) */
.ah-cta { background: linear-gradient(100deg, var(--ake-navy) 0%, var(--ake-navy-700) 100%); }
.ah-cta .ah-wrap { display: flex; align-items: center; justify-content: space-between; gap: 28px; flex-wrap: wrap; padding-block: 52px; }
.ah-cta h2 { color: #fff; font-size: var(--ake-fs-h2); font-weight: 700; margin: 0 0 8px; }
.ah-cta p { color: #cdd6e8; margin: 0; max-width: 540px; }
.ah-cta-actions { display: flex; gap: 12px; flex-wrap: wrap; }

@media (max-width: 991px) {
  .ah-grid-4 { grid-template-columns: repeat(2,1fr); }
  .ah-why-grid { grid-template-columns: repeat(2,1fr); }
  .ah-ref-grid { grid-template-columns: repeat(2,1fr); }
  .ah-ref-top { grid-template-columns: 1fr; }
  .ah-metric-grid { grid-template-columns: repeat(3,1fr); }
  .ah-metric:nth-child(3) { border-right: 0; }
}
@media (min-width: 992px) and (max-width: 1320px) {
  .ah-ref-index { padding-top: 0; }
  .ah-ref-index .ah-wrap { margin-top: -36px; }
}
@media (max-width: 575px) {
  .ah-grid-4, .ah-why-grid, .ah-ref-grid { grid-template-columns: 1fr; }
  .ah-ref-index { padding-top: 34px; }
  .ah-ref-top { gap: 18px; margin-bottom: 22px; }
  .ah-ref-controls { order: -1; }
  .ah-metric-grid { grid-template-columns: repeat(2,1fr); }
  .ah-metric { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.1); }
  .ah-hero-cta .ah-btn { flex: 1; justify-content: center; }
}

/* Fix: Inline-Pfeil-Icons klein halten (sonst füllen sie die Card) */
.ah-card-link svg { width: 15px; height: 15px; flex: 0 0 auto; }
.ah-btn svg { width: 18px; height: 18px; flex: 0 0 auto; }
.ah-card-link { white-space: nowrap; }

/* ===== FAQ (Produkt-/Branchenseiten, native details = a11y, kein JS) ===== */
.ake-faq { padding: clamp(40px,2rem+3vw,72px) 0; background: #fff; }
.ake-faq-wrap { max-width: 860px; margin: 0 auto; padding: 0 clamp(1rem,4vw,28px); }
.ake-faq h2 { font-size: var(--ake-fs-h2, 1.75rem); font-weight: 700; color: var(--ake-navy, #16223f); margin: 8px 0 26px; }
.ake-faq-item { border: 1px solid var(--ake-line, #e7ecf3); border-radius: 12px; margin-bottom: 12px; background: #fff; overflow: hidden; }
.ake-faq-item summary { list-style: none; cursor: pointer; padding: 18px 22px; font-size: var(--ake-fs-base, 15px); font-weight: 600; color: var(--ake-navy, #16223f); display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.ake-faq-item summary::-webkit-details-marker { display: none; }
.ake-faq-item summary::after { content: ''; width: 11px; height: 11px; border-right: 2px solid var(--ake-red, #e32726); border-bottom: 2px solid var(--ake-red, #e32726); transform: rotate(45deg); transition: transform .25s; flex: 0 0 auto; }
.ake-faq-item[open] summary::after { transform: rotate(225deg); }
.ake-faq-item[open] summary { color: var(--ake-red-700, #c11f1e); }
.ake-faq-a { padding: 0 22px 20px; color: var(--ake-text-2, #3a4456); font-size: var(--ake-fs-sm, 14px); line-height: 1.7; }
.ake-faq-item summary:focus-visible { outline: 2px solid var(--ake-navy, #16223f); outline-offset: -2px; }

/* ===== News-Grid (Bizden Haberler) ===== */
.ah-news-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.ah-news { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--ake-line,#e7ecf3); border-radius: 14px; overflow: hidden; text-decoration: none; transition: transform .2s, box-shadow .2s, border-color .2s; }
.ah-news:hover { transform: translateY(-4px); box-shadow: 0 16px 36px -14px rgba(22,34,63,.22); border-color: var(--ake-line-strong,#d4dce8); }
.ah-news-img { aspect-ratio: 16/10; background: var(--ake-img-bg,#f3f6fb); overflow: hidden; }
.ah-news-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.ah-news:hover .ah-news-img img { transform: scale(1.05); }
.ah-news-body { padding: 20px 22px 22px; display: flex; flex-direction: column; flex: 1; }
.ah-news-date { font-size: var(--ake-fs-2xs,11px); font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--ake-red-700,#c11f1e); margin-bottom: 9px; }
.ah-news-body h3 { font-size: var(--ake-fs-h4,18px); font-weight: 600; color: var(--ake-navy,#16223f); line-height: 1.35; margin: 0 0 10px;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.ah-news-body p { font-size: var(--ake-fs-sm,14px); color: var(--ake-muted,#6b7689); line-height: 1.6; margin: 0 0 16px; flex: 1;
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.ah-news .ah-card-link { color: var(--ake-red,#e32726); font-weight: 600; font-size: var(--ake-fs-sm,14px); }
@media (max-width:991px){ .ah-news-grid{ grid-template-columns: repeat(2,1fr);} }
@media (max-width:575px){ .ah-news-grid{ grid-template-columns: 1fr;} }

/* ===== Download-Center (Kataloge) ===== */
.ah-dl-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 16px; }
.ah-dl { display: flex; align-items: center; gap: 18px; background: #fff; border: 1px solid var(--ake-line,#e7ecf3); border-radius: 12px; padding: 20px 22px; text-decoration: none; transition: transform .18s, box-shadow .18s, border-color .18s; }
.ah-dl:hover { transform: translateY(-3px); box-shadow: 0 14px 30px -14px rgba(22,34,63,.22); border-color: var(--ake-line-strong,#d4dce8); }
.ah-dl-ico { flex: 0 0 auto; width: 50px; height: 56px; border-radius: 8px; background: #fdeceb; color: var(--ake-red,#e32726); display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 12px; position: relative; }
.ah-dl-ico svg { width: 26px; height: 26px; }
.ah-dl-body { flex: 1; min-width: 0; }
.ah-dl-body h3 { font-size: var(--ake-fs-base,15px); font-weight: 600; color: var(--ake-navy,#16223f); margin: 0 0 4px; line-height: 1.35; }
.ah-dl-meta { font-size: var(--ake-fs-xs,13px); color: var(--ake-muted,#6b7689); }
.ah-dl-arrow { flex: 0 0 auto; width: 38px; height: 38px; border-radius: 9px; background: var(--ake-surface,#f6f8fb); color: var(--ake-navy,#16223f); display: flex; align-items: center; justify-content: center; transition: background .18s, color .18s; }
.ah-dl:hover .ah-dl-arrow { background: var(--ake-navy,#16223f); color: #fff; }
.ah-dl-arrow svg { width: 18px; height: 18px; }
@media (max-width:767px){
  .ah-download-section { padding-top: 28px; }
  .ah-download-section .ah-head { margin-bottom: 16px; }
  .ah-download-section .ah-h2 { font-size: 24px; }
  .ah-download-section .ah-lead { font-size: 15px; line-height: 1.5; }
  .ah-dl-grid{ grid-template-columns: 1fr; gap: 12px; }
  .ah-dl { min-height: 82px; padding: 14px 16px; gap: 12px; }
  .ah-dl-ico { width: 42px; height: 48px; }
  .ah-dl-arrow { width: 34px; height: 34px; }
}

/* Catalog-Chip-Vars (--navy etc.) auch außerhalb .ake-catalog verfügbar machen (Referanslar-Filter) */
.akeh-home { --navy: #16223f; --navy-700: #233d94; --red: #e32726; --line: #e7ecf3; --line-strong: #d4dce8; --muted: #6b7689; --surface-2: #eef2f8; --ink: #1c2433; }

/* ============ FOTO-PRODUKT-KACHELN (bild-getrieben, ersetzt Icon-Karten) ============ */
.ah-ptile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:18px}
.ah-ptile{position:relative;display:flex;align-items:flex-end;min-height:300px;border-radius:14px;overflow:hidden;text-decoration:none;isolation:isolate;background:var(--ake-navy);box-shadow:0 1px 2px rgba(16,34,63,.08)}
.ah-ptile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.ah-ptile::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(11,17,36,0) 28%,rgba(11,17,36,.5) 60%,rgba(9,14,30,.93) 100%)}
.ah-ptile:hover img,.ah-ptile:focus-visible img{transform:scale(1.07)}
.ah-ptile-body{padding:22px 22px 20px;color:#fff;width:100%}
.ah-ptile-tag{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#fff;margin-bottom:9px}
.ah-ptile-tag::before{content:"";width:22px;height:2px;background:var(--ake-red);flex:none}
.ah-ptile-body h3{margin:0;font-size:18px;font-weight:600;line-height:1.25;color:#fff;letter-spacing:-.01em}
.ah-ptile-body p{margin:0;font-size:13.5px;line-height:1.5;color:rgba(255,255,255,.85);max-height:0;opacity:0;overflow:hidden;transition:max-height .45s ease,opacity .4s ease,margin .4s ease}
.ah-ptile:hover .ah-ptile-body p,.ah-ptile:focus-within .ah-ptile-body p{max-height:90px;opacity:1;margin-top:7px}
.ah-ptile-arrow{position:absolute;top:15px;right:15px;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.16);display:grid;place-items:center;color:#fff;transition:background .3s,transform .3s}
.ah-ptile:hover .ah-ptile-arrow{background:var(--ake-red);transform:translateX(2px)}
.ah-ptile-arrow svg{width:17px;height:17px}
.ah-ptile--sm{min-height:236px}
.ah-ptile--sm .ah-ptile-body h3{font-size:16.5px}
/* Sektor-Karten kürzer (236px) → leichterer Gradient, damit das Foto sichtbar bleibt (nicht flach-dunkel) */
.ah-ptile--sm::after{background:linear-gradient(180deg,rgba(11,17,36,.05) 0%,rgba(11,17,36,.12) 42%,rgba(9,14,30,.82) 100%)}
@media (max-width:560px){.ah-ptile-grid{grid-template-columns:1fr}.ah-ptile,.ah-ptile--sm{min-height:240px}.ah-ptile-body p{max-height:90px;opacity:1;margin-top:7px}}
@media (prefers-reduced-motion:reduce){.ah-ptile img,.ah-ptile-arrow{transition:none}}

/* ============ HERO größer/immersiv (px+vw, immun gegen html{font-size:10px}) ============ */
.akeh-home .ah-hero{min-height:calc(100svh - 122px)}
@media (max-width:991px){.akeh-home .ah-hero{min-height:calc(100svh - 76px)}}
.akeh-home .ah-hero-inner{padding-top:36px;padding-bottom:36px}
.akeh-home .ah-hero-eyebrow{font-size:13px;letter-spacing:.16em;margin-bottom:14px}
.akeh-home .ah-hero h1{font-size:clamp(30px,5.5vw + 8px,62px);line-height:1.1;letter-spacing:-.02em;max-width:min(100%,20ch);margin-bottom:20px;overflow-wrap:anywhere;word-break:normal;hyphens:auto;text-wrap:balance}
.akeh-home .ah-hero-sub{font-size:clamp(16px,.5vw + 14px,20px);line-height:1.55;max-width:58ch;margin-bottom:30px}
.akeh-home .ah-hero-cta .ah-btn{font-size:15px;padding:14px 26px}
.akeh-home .ah-trust-inline{font-size:13px}
/* Mobile-Fix: Hero NICHT auf Vollbild zwingen → Inhalt bestimmt Höhe, primärer CTA bleibt im ersten Viewport sichtbar.
   padding-bottom reserviert Platz, damit die Floating-Buttons (Teklif/WhatsApp) den Inhalt nicht verdecken. */
@media (max-width:575px){
  .akeh-home .ah-hero{min-height:auto}
  .akeh-home .ah-hero-inner{padding-top:26px;padding-bottom:92px}
}
.akeh-home .ah-hero::after{background:linear-gradient(90deg,rgba(14,22,44,.9) 0%,rgba(14,22,44,.62) 52%,rgba(14,22,44,.28) 100%)}
.akeh-home .ah-hero-bg{object-position:center 38%}

/* ============ REFERANSLAR — Navy-Immersiv-Band (Foto-Tiles, einheitlich mit Produkt-Kacheln) ============ */
.ah-refband{background:linear-gradient(180deg,#16223f 0%,#0e1830 100%);position:relative;overflow:hidden}
.ah-refband::before{content:"";position:absolute;top:-40%;right:-10%;width:520px;height:520px;background:radial-gradient(circle,rgba(227,39,38,.10),transparent 70%);pointer-events:none}
.ah-refband .ah-eyebrow{color:#ff7a78}
.ah-refband .ah-h2{color:#fff}
.ah-refband .ah-lead{color:rgba(255,255,255,.82)}
.ah-rtile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(212px,1fr));gap:16px;position:relative}
.ah-rtile{position:relative;display:flex;align-items:flex-end;min-height:310px;border-radius:13px;overflow:hidden;text-decoration:none;isolation:isolate;background:#0d1730;box-shadow:0 10px 30px -12px rgba(0,0,0,.5)}
.ah-rtile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.ah-rtile::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(8,13,28,0) 34%,rgba(8,13,28,.72) 70%,rgba(6,10,22,.96) 100%)}
.ah-rtile:hover img,.ah-rtile:focus-visible img{transform:scale(1.07)}
.ah-rtile-body{padding:16px 16px 16px;width:100%}
.ah-rtile-meta{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#ff8b89;margin-bottom:7px}
.ah-rtile-meta::before{content:"";width:18px;height:2px;background:var(--ake-red);flex:none}
.ah-rtile h3{margin:0;font-size:14px;font-weight:600;line-height:1.32;color:#fff;letter-spacing:-.005em}
.ah-refband .ah-btn--outline{background:transparent;border:1.5px solid rgba(255,255,255,.45);color:#fff}
.ah-refband .ah-btn--outline:hover{background:#fff;border-color:#fff;color:var(--ake-navy)}
@media (max-width:560px){.ah-rtile-grid{grid-template-columns:1fr 1fr;gap:11px}.ah-rtile{min-height:200px;border-radius:10px}.ah-rtile h3{font-size:12.5px}}
@media (prefers-reduced-motion:reduce){.ah-rtile img{transition:none}}

/* ---- Normen-/Belge-Strip (auf dem Navy-Metrics-Band → heller Text) ---- */
.ah-certs{list-style:none;margin:0;padding:18px 14px 8px;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 28px;border-top:1px solid rgba(255,255,255,.12)}
.ah-certs li{display:inline-flex;align-items:center;gap:8px;font-size:var(--ake-fs-sm);font-weight:600;color:#fff}
.ah-certs svg{width:18px;height:18px;color:#ff7a78;flex:none}

/* ---- Pfad-Auswahl / Solutions by Role ---- */
.ah-roles-sec{background:var(--ake-surface)}
.ah-role-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.ah-role{display:flex;align-items:center;gap:16px;padding:20px;background:#fff;border:1px solid var(--ake-line);border-radius:12px;text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .2s}
.ah-role:hover{border-color:var(--ake-navy);box-shadow:0 12px 30px -14px rgba(22,34,63,.3);transform:translateY(-3px)}
.ah-role:focus-visible{outline:2px solid var(--ake-navy);outline-offset:3px}
.ah-role-ico{flex:none;display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:12px;background:var(--ake-tint-navy);color:var(--ake-navy)}
.ah-role-ico svg{width:24px;height:24px}
.ah-role-body{flex:1;min-width:0}
.ah-role-body h3{margin:0 0 4px;font-size:var(--ake-fs-base);font-weight:600;color:var(--ake-navy);line-height:1.3}
.ah-role-body p{margin:0;font-size:var(--ake-fs-sm);color:var(--ake-text-2);line-height:1.5}
.ah-role-arrow{flex:none;color:var(--ake-red);opacity:.5;transition:opacity .2s,transform .2s}
.ah-role-arrow svg{width:20px;height:20px}
.ah-role:hover .ah-role-arrow{opacity:1;transform:translateX(3px)}
@media (prefers-reduced-motion:reduce){.ah-role,.ah-role-arrow{transition:none}}

@media (max-width:575px){
  .akeh-home .ah-hero h1{font-size:clamp(28px,7.1vw,31px);max-width:100%}
  .akeh-home .ah-hero-sub{font-size:15.5px;line-height:1.48;margin-bottom:22px}
  .akeh-home .ah-hero-cta{gap:10px;margin-bottom:20px}
  .akeh-home .ah-hero-cta .ah-btn{flex:1 1 100%;min-height:46px;padding:13px 18px}
  .akeh-home .ah-trust-inline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;font-size:12px}
  .ah-metric{padding:24px 10px 20px}
  .ah-certs{justify-content:flex-start;padding:14px 16px 8px;gap:9px 16px}
  .ah-certs li{font-size:12.5px}
  .ah-role{padding:16px}
  .ah-role-ico{width:44px;height:44px}
}

/* === ake-overrides-v25.css === */
/* AKE Phase-2 Preview — minimale Overrides (Live-Theme bleibt unangetastet) */

/* Legacy-Preloader ist JS-abhaengig und kann bei langsamen/gebrochenen Theme-Skripten die komplette Seite verdecken. */
.loading-area{display:none!important}

/* Sprachschalter: Globus-Icon vor den Sprachcodes (Text statt Flaggen) */
.akeh-lang-ico{margin-right:7px;opacity:.8;font-size:.95em;vertical-align:-1px}
.akeh-dlang .akeh-lang-ico{margin-right:8px}

/* Off-Canvas-/RevSlider-bedingten horizontalen Overflow unterbinden */
html,
body {
  overflow-x: hidden;
  max-width: 100%;
}

/* Mobile-Nav (header-nav collapse) im geschlossenen Zustand sicher ausblenden,
   damit sie nicht rechts herausragt, bevor JS initialisiert */
@media (min-width: 992px) {
  .header-nav.navbar-collapse {
    overflow: visible;
  }
}

/* ===== Enterprise-Header (#akeh) Overflow-Fix — CTA wurde rechts abgeschnitten ===== */
#akeh .akeh-wrap { max-width: 1440px; padding: 0 28px; gap: 12px; }
#akeh .akeh-nav { min-width: 0; }
#akeh .akeh-menu { gap: 0; flex-wrap: nowrap; }
#akeh .akeh-menu > li > a { padding: 11px 6px; font-size: 14px; letter-spacing: 0; }
#akeh .akeh-menu > li > a::after { left: 9px; right: 9px; }
#akeh .akeh-actions { flex: 0 0 auto; }
#akeh .akeh-cta { padding: 11px 16px; font-size: 12.5px; }
@media (max-width: 575px) {
  #akeh .akeh-wrap { padding: 0 16px; gap: 8px; }
  #akeh .akeh-logo img { width: auto; height: 36px; }
  .akeh-drawer { width: 100vw !important; max-width: 100vw; }
}

/* ===== Interior-Banner: Titel lesbar machen (Overlay war opacity:0 -> weißer Titel unsichtbar auf hellen Bildern) ===== */
.wt-bnr-inr .overlay-main { opacity: 1 !important; background-color: rgba(8, 14, 30, 0.5) !important; }
.wt-bnr-inr .banner-title-name h1,
.wt-bnr-inr .banner-title-name h2 { text-shadow: 0 2px 14px rgba(0,0,0,.45); }

/* ===== A11y: Mobil-Drawer im geschlossenen Zustand aus Tab-Order nehmen (WCAG aria-hidden-focus) ===== */
.akeh-drawer:not(.open) { visibility: hidden; }
.akeh-drawer.open { visibility: visible; }
/* Skip-Link (sichtbar bei Fokus) */
.ake-skip { position: absolute; left: -9999px; top: 0; z-index: 100000; background: #16223f; color: #fff; padding: 12px 18px; border-radius: 0 0 8px 0; font: 600 14px/1 Poppins, sans-serif; text-decoration: none; }
.ake-skip:focus { left: 0; }

/* ===== A11y: Cookie-/Inline-Links unterscheidbar (nicht nur Farbe) ===== */
.cookie-bar a, #akeh .akeh-cookie a, a[href$="cerez-politikasi"], a[href$="cookie-policy"] { text-decoration: underline; }

/* ===== Floating Lead-CTA (Conversion: Teklif + WhatsApp, jede Seite) ===== */
.ake-fab { position: fixed; right: 18px; bottom: 84px; z-index: 9990; display: flex; flex-direction: column; gap: 10px; font-family: 'Poppins', sans-serif; }
.ake-fab-btn { display: inline-flex; align-items: center; gap: 9px; padding: 12px 18px; border-radius: 999px; color: #fff; font-size: 13.5px; font-weight: 600; text-decoration: none; box-shadow: 0 10px 26px -8px rgba(2,8,40,.45); transition: transform .18s, box-shadow .18s, background .18s; }
.ake-fab-btn svg { width: 20px; height: 20px; flex: 0 0 auto; }
.ake-fab-btn:hover { transform: translateY(-2px); color: #fff; box-shadow: 0 16px 32px -10px rgba(2,8,40,.55); }
.ake-fab-quote { background: #e32726; }
.ake-fab-quote:hover { background: #c81f1e; }
.ake-fab-wa { background: #0f7d3b; }
.ake-fab-wa:hover { background: #0b6630; }
.ake-fab-btn:focus-visible { outline: 2px solid #16223f; outline-offset: 2px; }
html[data-ake-consent-visible="1"] .ake-fab,
html[data-ake-drawer-open="1"] .ake-fab { display: none; }
html[data-ake-drawer-open="1"] .ake-cart-fab { display: none !important; }
html[data-ake-drawer-open="1"] .ake-consent,
html[data-ake-drawer-open="1"] .cookie-bar { display: none !important; }
@media (max-width: 575px) {
  .ake-fab { right: 14px; bottom: 22px; gap: 8px; }
  html[data-ake-consent-visible="1"] .ake-fab { display: flex; bottom: 156px; }
  html[data-ake-consent-visible="1"] .ake-cart-fab { bottom: 156px; }
  html[data-ake-drawer-open="1"] .ake-fab { display: none; }
  .ake-fab-quote { display: none; }
  .ake-fab-btn { width: 56px; height: 56px; padding: 0; justify-content: center; border-radius: 50%; }
  .ake-fab-btn span { display: none; }   /* mobil nur Icons */
  button.scroltop { display: none !important; }
}
@media (prefers-reduced-motion: reduce) { .ake-fab-btn { transition: none; } }

/* ===== Lead-CTA-Band (Content-Ende Produkt-/Branchenseiten) ===== */
.ake-cta-band { background: linear-gradient(100deg, #16223f 0%, #233d94 100%); color: #fff; padding: 46px 0; font-family: 'Poppins', sans-serif; }
.ake-cta-inner { max-width: 1140px; margin: 0 auto; padding: 0 24px; display: flex; align-items: center; justify-content: space-between; gap: 28px; flex-wrap: wrap; }
.ake-cta-text h2 { color: #fff; font-size: 24px; font-weight: 700; margin: 0 0 8px; line-height: 1.25; }
.ake-cta-text p { color: rgba(255,255,255,.82); font-size: 15px; margin: 0; max-width: 560px; }
.ake-cta-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.ake-cta-b { display: inline-flex; align-items: center; gap: 8px; padding: 13px 24px; border-radius: 10px; font-size: 14px; font-weight: 600; text-decoration: none; white-space: nowrap; transition: transform .18s, background .18s, box-shadow .18s; }
.ake-cta-b:hover { transform: translateY(-2px); }
.ake-cta-b--primary { background: #e32726; color: #fff; box-shadow: 0 10px 24px -8px rgba(227,39,38,.6); }
.ake-cta-b--primary:hover { background: #c81f1e; color: #fff; }
.ake-cta-b--ghost { background: transparent; color: #fff; border: 1.5px solid rgba(255,255,255,.4); }
.ake-cta-b--ghost:hover { background: rgba(255,255,255,.1); color: #fff; border-color: #fff; }
.ake-cta-b--wa { background: #0f7d3b; color: #fff; }
.ake-cta-b--wa:hover { background: #0b6630; color: #fff; }
.ake-cta-b:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
@media (max-width: 767px) { .ake-cta-inner { flex-direction: column; align-items: flex-start; } .ake-cta-text h2 { font-size: 20px; } .ake-cta-actions { width: 100%; } .ake-cta-b { flex: 1; justify-content: center; } }

/* ===== Footer aus fixed-Reveal in normalen Fluss (sonst überlagert er das CTA-Band) ===== */
body.footer-fixed .site-footer { position: static !important; }

/* Mega-Menue Spaltenlabel lesbar (war fs-2xs) */
#akeh .akeh-mega-title{font-size:13px}

/* Banner-Titel als echte Seitenüberschrift (war font-18 weight-300 = wie Body) */
.wt-bnr-inr .wt-bnr-inr-entry h1,.wt-bnr-inr h1{font-size:clamp(26px,1.6vw+20px,38px)!important;font-weight:600!important}

/* SEO-/Content-Abschnittstitel fuer Legacy-Seiten: sichtbar, aber ruhig */
.page-content .ake-seo-section-title{
  margin:0 0 18px;
  color:#16223f;
  font:700 24px/1.25 Poppins,sans-serif;
}
.page-content .ake-seo-section-title::after{
  content:"";
  display:block;
  width:44px;
  height:3px;
  margin-top:12px;
  background:#e32726;
  border-radius:3px;
}
@media(max-width:575px){.page-content .ake-seo-section-title{font-size:21px}}

/* Inline-Text-Links unterscheidbar (WCAG link-in-text-block) */
p a[href^="mailto:"],li a[href^="mailto:"],span a[href^="mailto:"],.page-content p a,.page-content li a{text-decoration:underline}

/* ===== İletişim-Kontaktformular: Enterprise-Stil + mobil-tauglich (Legacy-Theme-Form) ===== */
.contact-form .contact-one{padding:24px!important}
.contact-form label{display:block;font:600 13px/1 'Poppins',sans-serif;color:#16223f;margin:0 0 6px}
.contact-form .form-control{
  width:100%;height:auto;min-height:48px;padding:12px 14px;
  border:1px solid #e7ecf3;border-radius:10px;background:#fff;
  font-size:16px;color:#1c2433;box-shadow:none;line-height:1.4;-webkit-appearance:none}
.contact-form textarea.form-control{min-height:120px;resize:vertical}
.contact-form .form-control:focus{border-color:#16223f;box-shadow:0 0 0 3px rgba(22,34,63,.1);outline:none}
.contact-form .form-group{margin-bottom:16px}
.contact-form .site-button{width:100%;padding:15px;border-radius:11px;background:#16223f;color:#fff;font-size:15px;border:0}
.contact-form .site-button:hover{background:#233d94;color:#fff}
.contact-form .h-captcha{margin:4px 0 16px}
@media (max-width:575px){
  .contact-form .contact-one{padding:18px!important}
}

/* === ake-catalog.css === */
/* ============================================================
   AKE Katalog (Yedek Parça / Spare Parts) — Enterprise-Redesign
   Eigenes CSS-Grid statt Bootstrap-3-Float. Marke: Navy + Rot.
   ============================================================ */
.ake-catalog {
  --navy: #16223f;
  --navy-700: #233d94;
  --red: #e32726;
  --ink: #1c2433;
  --muted: #6b7689;
  --line: #e7ecf3;
  --surface: #f6f8fb;
  --card: #ffffff;
  --img-bg: #f3f6fb;
  background: var(--surface);
  padding: 24px 0 80px;
  font-family: 'Poppins', sans-serif;
}
.ake-catalog .ake-wrap { max-width: 1240px; margin: 0 auto; padding: 0 24px; }
.ake-catalog-flow { display: flex; flex-direction: column; }

/* ---- Toolbar (Suche + Anzahl) ---- */
.ake-toolbar {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) auto auto;
  align-items: center;
  gap: 14px;
  margin-bottom: 18px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}
.ake-count { order: 2; color: var(--muted); font-size: 14px; font-weight: 500; white-space: nowrap; }
.ake-count b { color: var(--navy); font-weight: 700; }
.ake-search { order: 1; position: relative; min-width: 220px; }
.ake-search svg { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); width: 18px; height: 18px; color: var(--muted); pointer-events: none; }
.ake-search input {
  width: 100%; height: 50px; padding: 0 16px 0 42px;
  border: 1px solid var(--line); border-radius: 10px; background: #fff;
  font-size: 15px; color: var(--ink); transition: border-color .2s, box-shadow .2s;
}
.ake-search input::placeholder { color: #9aa3b2; }
.ake-search input:focus { outline: none; border-color: var(--navy); box-shadow: 0 0 0 3px rgba(22,34,63,.10); }

/* ---- Kategorie-Filter (Chips) ---- */
.ake-filters { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 30px; }
.ake-chip {
  display: inline-flex; align-items: center; gap: 7px;
  padding: 8px 15px; border: 1px solid var(--line); border-radius: 999px;
  background: #fff; color: var(--navy); font-size: 13px; font-weight: 500;
  line-height: 1; text-decoration: none; cursor: pointer;
  transition: background .18s, border-color .18s, color .18s;
}
.ake-chip:hover { border-color: var(--navy); background: #eef2f8; color: var(--navy); }
.ake-chip .n { font-size: 11px; color: var(--muted); font-weight: 600; }
.ake-chip.is-active { background: var(--navy); border-color: var(--navy); color: #fff; }
.ake-chip.is-active .n { color: rgba(255,255,255,.7); }

/* ---- Produkt-Grid ---- */
.ake-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(236px, 1fr));
  gap: 22px;
}
.ake-card {
  position: relative; display: flex; flex-direction: column;
  background: var(--card); border: 1px solid var(--line); border-radius: 12px;
  overflow: hidden; transition: box-shadow .22s ease, border-color .22s ease;
}
.ake-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: var(--red); transform: scaleX(0); transform-origin: left;
  transition: transform .25s ease; z-index: 2;
}
.ake-card:hover { box-shadow: 0 14px 30px rgba(22,34,63,.10); border-color: #d4dce8; }
.ake-card:hover::before { transform: scaleX(1); }

.ake-card-media { display: block; aspect-ratio: 1 / 1; background: var(--img-bg); border-bottom: 1px solid var(--line); overflow: hidden; }
.ake-card-media img { width: 100%; height: 100%; object-fit: contain; padding: 16px; transition: transform .28s ease; }
.ake-card:hover .ake-card-media img { transform: scale(1.025); }

.ake-card-body { display: flex; flex-direction: column; flex: 1; padding: 16px 16px 18px; }
.ake-card-meta {
  min-height: 28px; display: flex; align-items: center; justify-content: space-between; gap: 8px;
  margin-bottom: 9px; padding-bottom: 8px; border-bottom: 1px solid var(--line);
}
.ake-card-cat {
  min-width: 0; color: var(--red); font-size: 10.5px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.ake-card-meta .ake-card-sku {
  flex: none; margin: 0; color: var(--muted); font-size: 11px; font-weight: 600; letter-spacing: 0; white-space: nowrap;
}
.ake-card-actions { min-height: 40px; }
.ake-eyebrow { font-size: 10.5px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; color: var(--red); margin-bottom: 7px; }
.ake-card-title { margin: 0 0 14px; font-size: 14.5px; line-height: 1.4; font-weight: 600; color: var(--navy);
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.8em; }
.ake-card-title a { color: inherit; text-decoration: none; }
.ake-card-foot { margin-top: auto; display: flex; align-items: center; gap: 10px; }
.ake-quote {
  display: inline-flex; align-items: center; gap: 7px;
  padding: 9px 14px; border-radius: 8px; font-size: 12.5px; font-weight: 600;
  background: #0f7d3b; color: #fff; text-decoration: none; line-height: 1;
  transition: background .18s, transform .12s;
}
.ake-quote:hover { background: #0b6630; color: #fff; }
.ake-quote:active { transform: scale(.97); }
.ake-quote svg { width: 15px; height: 15px; }
.ake-detaillink { margin-left: auto; display: inline-flex; align-items: center; color: var(--navy); opacity: .55; transition: opacity .18s, transform .18s; }
.ake-card:hover .ake-detaillink { opacity: 1; transform: translateX(2px); }
.ake-detaillink svg { width: 18px; height: 18px; }

.ake-card a:focus-visible, .ake-chip:focus-visible, .ake-quote:focus-visible, .ake-search input:focus-visible { outline: 2px solid var(--navy); outline-offset: 2px; }

/* leeres Suchergebnis */
.ake-empty { display: none; text-align: center; padding: 60px 0; color: var(--muted); }

/* ============================================================
   Produkt-Detail
   ============================================================ */
.ake-detail { --navy:#16223f; --red:#e32726; --muted:#6b7689; --line:#e7ecf3;
  background:#fff; padding: 50px 0 80px; font-family:'Poppins',sans-serif; }
.ake-detail .ake-wrap { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
.ake-detail-grid { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(0,1fr); gap: 48px; align-items: start; }
.ake-gallery-main { border: 1px solid var(--line); border-radius: 14px; background: #f3f6fb; aspect-ratio: 4/3; overflow: hidden; display: flex; }
.ake-gallery-main img { width: 100%; height: 100%; object-fit: contain; padding: 26px; }
.ake-thumbs { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; margin-top: 12px; }
.ake-thumb { border: 1px solid var(--line); border-radius: 9px; background:#f3f6fb; aspect-ratio: 1/1; overflow: hidden; cursor: pointer; transition: border-color .18s; }
.ake-thumb:hover { border-color: var(--navy); }
.ake-thumb.is-active { border-color: var(--navy); box-shadow: inset 0 0 0 1px var(--navy); }
.ake-thumb:focus-visible { outline: 2px solid var(--navy); outline-offset: 2px; }
.ake-thumb img { width: 100%; height: 100%; object-fit: contain; padding: 8px; }

.ake-detail-info { position: sticky; top: 100px; }
.ake-detail-cat { font-size: 11.5px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; color: var(--red); }
.ake-detail-title { font-size: 30px; line-height: 1.18; font-weight: 700; color: var(--navy); margin: 10px 0 8px; }
.ake-sku { color: var(--muted); font-size: 13.5px; margin-bottom: 20px; }
.ake-sku b { color: var(--navy); }
.ake-detail-desc { color: #3a4456; font-size: 15px; line-height: 1.75; }
.ake-detail-desc p { margin: 0 0 12px; }
.ake-detail-desc ul { margin: 0 0 14px; padding-left: 20px; }
.ake-detail-desc li { margin-bottom: 6px; }
.ake-detail-conversion {
  margin: 16px 0 22px; padding: 20px; border: 1px solid #dce4ef; border-radius: 12px;
  background: #fff; box-shadow: 0 16px 34px -28px rgba(22,34,63,.55);
}
.ake-conversion-title {
  margin: 0 0 8px;
  color: var(--navy);
  font-size: 17px;
  font-weight: 700;
  line-height: 1.35;
}
.ake-detail-actionrow { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 10px; align-items: stretch; }
.ake-detail .ake-detail-conversion .ake-quote-note { margin-bottom: 12px; color: #536075; }
.ake-detail .ake-detail-conversion .ake-detail-addcart,
.ake-detail .ake-detail-conversion .ake-quote-btn { margin: 0; min-height: 48px; }
.ake-quote-card { margin-top: 26px; padding: 22px; border: 1px solid var(--line); border-radius: 14px; background: #f6f8fb; }
.ake-quote-note { color: var(--muted); font-size: 13.5px; margin: 0 0 14px; }
.ake-quote-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 9px; width: 100%;
  padding: 15px 18px; border: 1px solid #0f7d3b; border-radius: 11px; background: #fff; color: #0f7d3b;
  font-size: 15px; font-weight: 600; text-decoration: none; line-height: 1;
  transition: background .18s, transform .12s;
}
.ake-quote-btn:hover { background: #eaf6ee; color: #0f7d3b; }
.ake-quote-btn:active { transform: translateY(1px); }
.ake-quote-btn svg { width: 19px; height: 19px; }

@media (max-width: 860px) {
  .ake-detail-grid { grid-template-columns: 1fr; gap: 28px; }
  .ake-detail-info { position: static; order: 1; }
  .ake-detail-media { order: 2; }
  .ake-detail-title { font-size: 24px; }
  .ake-detail-actionrow { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
  .ake-toolbar { grid-template-columns: 1fr; align-items: stretch; }
  .ake-catalog .ake-search { min-width: 0; }
  .ake-catalog .ake-count { order: 2; }
  .ake-catalog .ake-sortbar { order: 3; justify-content: space-between; }
}
@media (min-width: 992px) and (max-width: 1320px) {
  .ake-catalog { padding-top: 0; }
  .ake-catalog .ake-toolbar { margin-top: -36px; padding: 14px; }
}
@media (max-width: 575px) {
  .ake-catalog { padding: 20px 0 56px; }
  .ake-catalog .ake-wrap { padding: 0 14px; }
  .ake-catalog .ake-toolbar { order: 1; gap: 8px; align-items: stretch; margin-bottom: 8px; padding: 10px; }
  .ake-catalog .ake-search { order: 1; flex: 1 1 100%; min-width: 0; }
  .ake-catalog .ake-count { order: 2; }
  .ake-catalog .ake-sortbar { order: 3; justify-content: space-between; }
  .ake-catalog .ake-sortbar select { flex: 0 1 210px; }
  .ake-catalog .ake-filter-toggle { order: 3; margin-bottom: 4px; }
  .ake-catalog .ake-filters { order: 4; }
  .ake-catalog .ake-trustbar {
    order: 2;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: 10px;
    padding: 8px 10px;
    gap: 7px 9px;
  }
  .ake-catalog .ake-trustbar > * { min-width: 0; }
  .ake-catalog .ake-trustbar li { font-size: 11.5px; gap: 6px; }
  .ake-catalog .ake-trustbar svg { width: 14px; height: 14px; }
  .ake-catalog .ake-grid { order: 5; }
  .ake-catalog .ake-empty { order: 6; }
  .ake-catalog .ake-help-cta { order: 7; }
  .ake-catalog .ake-intro { order: 8; margin-top: 28px; margin-bottom: 14px; }
  .ake-catalog .ake-faq { order: 9; }
  .ake-grid { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 14px; }
  .ake-card-body { padding: 13px; }
  .ake-card-meta { min-height: 32px; align-items: flex-start; flex-direction: column; gap: 3px; }
  .ake-detail { padding-top: 18px; }
  .ake-detail .ake-wrap { padding: 0 14px; }
  .ake-detail-grid { gap: 18px; }
  .ake-detail-title { font-size: 21px; margin: 6px 0 5px; }
  .ake-sku { margin-bottom: 10px; }
  .ake-detail-conversion { margin-top: 8px; margin-bottom: 14px; padding: 12px; }
  .ake-conversion-title { font-size: 15px; margin-bottom: 6px; }
  .ake-detail .ake-detail-conversion .ake-quote-note { display: none; }
  .ake-detail .ake-detail-conversion .ake-detail-addcart,
  .ake-detail .ake-detail-conversion .ake-quote-btn { min-height: 44px; }
}

@media (prefers-reduced-motion: reduce) {
  .ake-card, .ake-card::before, .ake-card-media img, .ake-quote, .ake-detaillink { transition: none; }
}

/* === ake-inner.css === */
/* ============================================================================
   AKE — INNENSEITEN Premium-Redesign  ·  Stil: "Trust & Authority" (ui-ux-pro-max)
   Geteilte Theme-Markup (.wt-bnr-inr / .section-content / .widget_services) → ~51 Seiten × 4 Sprachen.
   Prinzip: hochkontrast (dunkel, NICHT grau), kompakte Hierarchie, Karten-Panels, Navy+Rot.
   Tokens: ink #16223f · body #232c3a · accent #e32726 · surface #eef2f7 · card #fff · border #e6ecf4
   ========================================================================== */

/* ---------- Seitengrund: leichte Navy-Tönung (Panels heben sich ab) ---------- */
.page-content { background: #eef2f7; }

/* ---------- BANNER ---------- */
.wt-bnr-inr {
  background-position: center center !important;
  background-size: cover !important;
  background-attachment: scroll !important;
  background-repeat: no-repeat !important;
  background-color: #16223f;            /* Fallback hinter dem Foto */
  min-height: clamp(220px, 26vw, 360px);
  display: flex; align-items: flex-end; position: relative;
}
.wt-bnr-inr .overlay-main {
  opacity: 1 !important;
  background: linear-gradient(180deg, rgba(11,17,36,.22) 0%, rgba(11,17,36,.50) 55%, rgba(9,14,30,.82) 100%) !important;
}
.wt-bnr-inr .container { position: relative; z-index: 2; width: 100%; padding-bottom: 20px; }
.wt-bnr-inr-entry { padding: 0; }
/* Veralteten weißen Rahmen-Kasten um den Titel entfernen */
.wt-bnr-inr .banner-title-outer {
  position: relative; border: 0 !important; padding: 0 !important; width: auto !important; margin: 0 !important;
}
.wt-bnr-inr .banner-title-outer::before,
.wt-bnr-inr .banner-title-outer::after { display: none !important; }
.wt-bnr-inr .banner-title-name { width: auto !important; }
.wt-bnr-inr .banner-title-name h1,
.wt-bnr-inr h1 {
  font: 700 clamp(26px, 2.6vw, 42px)/1.12 'Poppins', sans-serif !important;
  letter-spacing: -.015em !important; text-transform: none !important;
  color: #fff !important; margin: 0 0 10px !important;
  text-shadow: 0 2px 20px rgba(0,0,0,.38);
}
.wt-bnr-inr .banner-title-name h1::after {
  content: ""; display: block; width: 54px; height: 3px; background: #e32726; border-radius: 2px; margin-top: 14px;
}
/* Breadcrumb */
.wt-bnr-inr .wt-breadcrumb {
  display: flex; gap: 8px; flex-wrap: wrap; list-style: none; padding: 0; margin: 6px 0 0;
  font: 500 13px/1 'Poppins', sans-serif;
}
.wt-bnr-inr .wt-breadcrumb li, .wt-bnr-inr .wt-breadcrumb a { color: rgba(255,255,255,.82); text-decoration: none; }
.wt-bnr-inr .wt-breadcrumb a:hover { color: #fff; }
.wt-bnr-inr .wt-breadcrumb li + li::before { content: "›"; margin-right: 8px; color: rgba(255,255,255,.5); }

/* ---------- CONTENT-PANEL (section-content als weiße Karte) ---------- */
.page-content .section-content {
  font-family: 'Poppins', sans-serif; color: #232c3a;
  background: #fff; border: 1px solid #e6ecf4; border-radius: 16px;
  padding: clamp(24px, 3vw, 44px);
  box-shadow: 0 2px 22px -10px rgba(16,34,63,.14);
}
/* Überschriften: Navy, kräftig, kompakt — NICHT hellblau/grau, nicht riesig */
.page-content .section-content h1,
.page-content .section-content h2,
.page-content .section-content h3,
.page-content .section-content h4 { color: #16223f; font-family: 'Poppins', sans-serif; letter-spacing: -.01em; }
.page-content .section-content h2,
.page-content .section-content .section-head h3 { font-size: clamp(20px, 1.5vw, 26px); font-weight: 700; margin: 34px 0 14px; }
.page-content .section-content h2:first-child,
.page-content .section-content h3:first-child { margin-top: 0; }
.page-content .section-content h3 { font-size: 18.5px; font-weight: 600; margin: 26px 0 10px; }
.page-content .section-content h2::after,
.page-content .section-content .accent-h::after {
  content: ""; display: block; width: 44px; height: 3px; background: #e32726; border-radius: 2px; margin-top: 11px;
}
/* Fließtext: dunkel + lesbar (Kern der User-Kritik „einfach grau") */
.page-content .section-content p {
  font-size: 16px; line-height: 1.72; color: #2a3340; max-width: 70ch; margin: 0 0 16px;
}
.page-content .section-content > p:first-of-type { font-size: 17px; color: #1c2433; } /* Lead */
.page-content .section-content strong, .page-content .section-content b { color: #16223f; font-weight: 600; }
.page-content .section-content a:not(.site-button):not(.btn):not(.ake-cta-b) {
  color: #233d94; text-decoration: underline; text-underline-offset: 2px; font-weight: 500;
}
.page-content .section-content img { max-width: 100%; height: auto; border-radius: 12px; }

/* ---------- FEATURE-LISTEN (2-spaltig, rote Check-Punkte, dunkler Text) ---------- */
.page-content .section-content ul {
  list-style: none; padding: 0; margin: 6px 0 24px;
  display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 12px 26px;
}
.page-content .section-content ul li {
  position: relative; padding-left: 30px; font-size: 15.5px; line-height: 1.5; color: #2a3340;
}
.page-content .section-content ul li::before {
  content: ""; position: absolute; left: 0; top: 2px; width: 19px; height: 19px; border-radius: 50%;
  background: rgba(227,39,38,.10);
}
/* Häkchen */
.page-content .section-content ul li::after {
  content: ""; position: absolute; left: 6px; top: 6px; width: 7px; height: 4px;
  border-left: 2px solid #e32726; border-bottom: 2px solid #e32726; transform: rotate(-45deg);
}
/* Kontakt- und Standortlisten bleiben Listen, keine Feature-Karten. */
.page-content .section-content ul.contact-list,
.page-content .section-content .section-head ul {
  display: block; list-style: none; padding: 0; margin: 0 0 18px;
}
.page-content .section-content ul.contact-list li,
.page-content .section-content .section-head ul li {
  padding-left: 0; margin: 0 0 10px; font-size: 15.5px; line-height: 1.55; color: #2a3340;
}
.page-content .section-content ul.contact-list li::before,
.page-content .section-content ul.contact-list li::after,
.page-content .section-content .section-head ul li::before,
.page-content .section-content .section-head ul li::after {
  content: none; display: none;
}
.page-content .section-content ul.contact-list .fa {
  width: 20px; margin-right: 8px; color: #e32726; text-align: center;
}

/* ---------- SIDEBAR (widget_services) als saubere sticky Karte ---------- */
.page-content .widget_services {
  background: #fff; border: 1px solid #e6ecf4; border-radius: 16px; padding: 20px 16px;
  position: sticky; top: 96px; box-shadow: 0 2px 22px -12px rgba(16,34,63,.12);
}
.page-content .widget_services > h3,
.page-content .widget_services .widget-title {
  font: 700 12px/1 'Poppins', sans-serif !important; text-transform: uppercase; letter-spacing: .1em;
  color: #8290a3; margin: 0 0 14px !important; padding: 0 6px;
}
.page-content .widget_services ul { list-style: none; padding: 0; margin: 0; display: block; }
.page-content .widget_services li { margin: 0; }
.page-content .widget_services li a {
  display: block; padding: 11px 13px; border-radius: 10px; color: #16223f;
  font: 500 14.5px/1.3 'Poppins', sans-serif; text-decoration: none; transition: background .2s, color .2s;
}
.page-content .widget_services li a:hover,
.page-content .widget_services li.active a {
  background: #f3f6fb; color: #e32726; box-shadow: inset 0 0 0 1px #e9eef6;
}

/* ---------- Abschnitts-Rhythmus ---------- */
.page-content .about-company-section,
.page-content .section-full { padding: clamp(34px, 4.5vw, 64px) 0; }

/* ---------- HOMELIFT: produktnahe Value-Leiste direkt nach dem Banner ---------- */
.ake-product-hero-panel {
  background: linear-gradient(180deg, #eef2f7 0%, #f6f8fb 100%);
  padding: 0 clamp(16px, 4vw, 28px);
  font-family: 'Poppins', sans-serif;
}
.ake-product-hero-wrap {
  max-width: 1180px;
  margin: 0 auto;
  transform: translateY(-28px);
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(340px, .9fr) auto;
  gap: 22px;
  align-items: center;
  padding: 24px;
  border: 1px solid #e2e9f2;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 42px -28px rgba(16, 34, 63, .32);
}
.ake-product-hero-copy h2 {
  margin: 8px 0 8px;
  color: #16223f;
  font: 700 clamp(21px, 1vw + 18px, 30px)/1.22 'Poppins', sans-serif;
  letter-spacing: -.01em;
}
.ake-product-hero-copy p {
  margin: 0;
  color: #3a4456;
  font: 400 14.5px/1.65 'Poppins', sans-serif;
  max-width: 68ch;
}
.ake-product-hero-kpis {
  display: grid;
  grid-template-columns: repeat(3, minmax(94px, 1fr));
  gap: 10px;
  padding: 0;
  margin: 0;
  list-style: none;
}
.ake-product-hero-kpis li {
  position: relative;
  overflow: hidden;
  min-height: 82px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 13px 14px;
  border: 1px solid #e7ecf3;
  border-radius: 12px;
  background: #f8fafd;
}
.ake-product-hero-kpis li::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 3px;
  background: #e32726;
}
.ake-product-hero-kpis strong {
  color: #16223f;
  font: 700 18px/1.15 'Poppins', sans-serif;
}
.ake-product-hero-kpis span {
  margin-top: 5px;
  color: #6b7689;
  font: 500 12px/1.35 'Poppins', sans-serif;
}
.ake-product-hero-actions {
  display: grid;
  gap: 10px;
  min-width: 190px;
}
.ake-product-hero-actions .ake-cta-b {
  justify-content: center;
  padding: 12px 18px;
  border-radius: 10px;
}
.ake-product-hero-actions .ake-cta-b--ghost {
  color: #16223f;
  border-color: #d4dce8;
  background: #fff;
}
.ake-product-hero-actions .ake-cta-b--ghost:hover {
  color: #fff;
  border-color: #16223f;
  background: #16223f;
}

/* ---------- GENERISCHE INNER-ACTION: Produktlinien / Use-Cases / Service ---------- */
.ake-inner-action-panel {
  background: linear-gradient(180deg, #eef2f7 0%, #f6f8fb 100%);
  padding: 0 clamp(16px, 4vw, 28px);
  font-family: 'Poppins', sans-serif;
}
.ake-inner-action-wrap {
  max-width: 1180px;
  margin: 0 auto;
  transform: translateY(-26px);
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(260px, .72fr) minmax(210px, .62fr);
  gap: 20px;
  align-items: center;
  padding: 22px 24px;
  border: 1px solid #e2e9f2;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 42px -28px rgba(16, 34, 63, .32);
}
.ake-inner-action-copy h2 {
  margin: 7px 0 8px;
  color: #16223f;
  font: 700 clamp(20px, .9vw + 18px, 28px)/1.2 'Poppins', sans-serif;
  letter-spacing: -.01em;
}
.ake-inner-action-copy p {
  margin: 0;
  max-width: 64ch;
  color: #3a4456;
  font: 400 14.5px/1.6 'Poppins', sans-serif;
}
.ake-inner-action-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  padding: 0;
  margin: 0;
  list-style: none;
}
.ake-inner-action-facts li {
  position: relative;
  overflow: hidden;
  min-height: 62px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 8px;
  border: 1px solid #e7ecf3;
  border-radius: 11px;
  background: #f8fafd;
  color: #16223f;
  font: 700 12.5px/1.25 'Poppins', sans-serif;
  text-align: center;
}
.ake-inner-action-facts li::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 3px;
  background: #e32726;
}
.ake-inner-action-buttons {
  display: grid;
  gap: 9px;
}
.ake-inner-action-buttons .ake-cta-b {
  justify-content: center;
  min-height: 44px;
  padding: 11px 16px;
  border-radius: 10px;
}
.ake-inner-action-buttons .ake-cta-b--ghost {
  color: #16223f;
  border-color: #d4dce8;
  background: #fff;
}
.ake-inner-action-buttons .ake-cta-b--ghost:hover {
  color: #fff;
  border-color: #16223f;
  background: #16223f;
}

/* Legacy Owl/Bootstrap media on product-line pages can initialize with a negative stage offset.
   Keep the real product image inspectable even when carousel JS has not finished. */
.page-content .wt-post-media {
  overflow: hidden;
  border-radius: 12px;
}
.page-content .wt-post-media .owl-carousel,
.page-content .wt-post-media .owl-stage-outer,
.page-content .wt-post-media .owl-stage,
.page-content .wt-post-media .owl-item {
  left: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  transform: none !important;
}
.page-content .wt-post-media .owl-stage { display: block !important; }
.page-content .wt-post-media .owl-item {
  float: none !important;
  margin-right: 0 !important;
}
.page-content .wt-post-media .owl-item.cloned { display: none !important; }
.page-content .wt-post-media .glightbox,
.page-content .wt-post-media .aon-thum-bx,
.page-content .wt-post-media .item {
  display: block !important;
  width: 100% !important;
}
.page-content .wt-post-media img {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 420px;
  object-fit: contain !important;
  background: #f3f6fb;
}

/* "$$$"/Sektion-Eyebrow-Artefakte zähmen (falls vorhanden) */
.page-content .ah-eyebrow, .page-content .sx-text-primary { color: #e32726 !important; }

/* ---------- PRODUKT-LINIEN-SEITEN (section-head / font-36 / btn-primary — eigener Theme-Aufbau) ---------- */
.page-content .section-head h2,
.page-content h2.font-36 {
  font-size: clamp(22px, 1.9vw, 30px) !important; font-weight: 700; color: #16223f;
  letter-spacing: -.005em; line-height: 1.2;
}
.page-content .wt-separator.bg-black { background: #e32726 !important; height: 3px; width: 46px; }
.page-content .text-col p, .page-content .text-col li { color: #2a3340; }
/* „Get an Offer"-Button: blau (btn-primary) → Marken-Navy mit rotem Hover */
.page-content .btn-primary {
  background: #16223f !important; border-color: #16223f !important; color: #fff !important;
  border-radius: 10px !important; font-weight: 600 !important; transition: background .2s !important;
}
.page-content .btn-primary:hover { background: #e32726 !important; border-color: #e32726 !important; }

/* ---------- TABELLEN (auch Word-MsoTableGrid in Legal/Specs — randlos → lesbar machen) ---------- */
.page-content .section-content table,
.page-content table.MsoTableGrid {
  width: 100% !important; border-collapse: collapse !important; margin: 18px 0 24px;
  font-family: 'Poppins', sans-serif; font-size: 14.5px; border: 1px solid #e2e9f2 !important; border-radius: 10px; overflow: hidden;
}
.page-content .section-content table td,
.page-content .section-content table th,
.page-content table.MsoTableGrid td,
.page-content table.MsoTableGrid th {
  border: 1px solid #e6ecf4 !important; padding: 11px 14px !important; color: #2a3340; vertical-align: top; line-height: 1.55; text-align: left;
}
.page-content .section-content table th,
.page-content .section-content table tr:first-child td {
  background: #f3f6fb; color: #16223f; font-weight: 600;
}
.page-content .section-content table tr:nth-child(even) td { background: #fafcfe; }

/* ---------- ACCORDION (konut / ozel-cozumler / my-lift / panoramik) ---------- */
.page-content .wt-accordion .panel,
.page-content .wt-accordion .wt-panel {
  border: 1px solid #e6ecf4 !important; border-radius: 12px !important; margin-bottom: 12px; overflow: hidden; background: #fff; box-shadow: 0 1px 3px rgba(16,34,63,.05);
}
.page-content .wt-accordion .acod-head { margin: 0 !important; border: 0 !important; }
.page-content .wt-accordion .acod-title { text-transform: none !important; margin: 0 !important; font-family: 'Poppins', sans-serif; }
.page-content .wt-accordion .acod-title a,
.page-content .wt-accordion .acod-head a {
  display: block; padding: 16px 18px !important; font: 600 16px/1.4 'Poppins', sans-serif; color: #16223f !important; text-decoration: none !important; background: #fff !important;
}
.page-content .wt-accordion .acod-title a.collapsed { color: #16223f !important; }
.page-content .wt-accordion .acod-body { color: #2a3340; }
.page-content .wt-accordion .acod-content { padding: 0 18px 16px !important; color: #2a3340; font-size: 15.5px; line-height: 1.65; }

/* ---------- SCHRIFT-GUARD: Word/CMS-Paste-Fonts (Calibri/Metropolis/Cambria…) nie durchlassen ----------
   Quelle ist bereinigt; diese Regel hält künftige Pastes auf Poppins. span:not([class]) = Word-Text, KEIN Icon. */
.page-content .section-content p,
.page-content .section-content li,
.page-content .section-content td,
.page-content .section-content th,
.page-content .section-content a,
.page-content .section-content font,
.page-content .section-content span:not([class]) { font-family: 'Poppins', sans-serif !important; }
/* ABER: Icon-Fonts nicht zu Poppins zwingen — Social-Links sind <a class="fa fa-instagram"> (Glyph via ::before),
   der Guard oben hätte sie auf Poppins gesetzt → Tofu. FontAwesome re-asserten (höhere Spezifität, gewinnt). */
.page-content .section-content .fa,
.page-content .section-content [class*="fa-"] { font-family: 'FontAwesome' !important; }

/* ---------- KONTAKT-FORMULAR (.contact-one: 6px schwarzer Theme-Rahmen → saubere Karte) ---------- */
.page-content .contact-one,
.contact-form .contact-one,
.contact-one {
  border: 1px solid #e6ecf4 !important; border-radius: 16px !important;
  box-shadow: 0 2px 22px -10px rgba(16,34,63,.14) !important; background: #fff !important;
}
.page-content .contact-form .site-button,
.page-content .contact-form button[type="submit"],
.contact-form .site-button,
.contact-form button[type="submit"] {
  background: #e32726 !important;
  border-color: #e32726 !important;
  color: #fff !important;
  border-radius: 11px !important;
  min-height: 46px;
  box-shadow: 0 8px 20px rgba(227, 39, 38, .24) !important;
}
.page-content .contact-form .site-button:hover,
.page-content .contact-form button[type="submit"]:hover,
.contact-form .site-button:hover,
.contact-form button[type="submit"]:hover {
  background: #c91d1d !important;
  border-color: #c91d1d !important;
}
.page-content .contact-form .site-button:focus-visible,
.page-content .contact-form button[type="submit"]:focus-visible,
.contact-form .site-button:focus-visible,
.contact-form button[type="submit"]:focus-visible {
  outline: 2px solid #16223f;
  outline-offset: 2px;
}

/* ---------- WORD-COPY-ARTEFAKTE: gelbe Markierungen / Highlights neutralisieren (kvkk etc.) ---------- */
.page-content [style*="background-color:yellow"],
.page-content [style*="background:yellow"],
.page-content [style*="background-color: yellow"],
.page-content [style*="#ffff00"],
.page-content [style*="#FFFF00"],
.page-content mark { background: transparent !important; color: inherit !important; }

/* ---------- FORM CONSENT: Legacy style.css hides native checkboxes globally ----------
   Keep KVKK/RFQ consent controls visibly rendered and keyboard-focusable. */
.ake-kvkk-consent input[type="checkbox"],
.ake-rfq-consent input[type="checkbox"] {
  -webkit-appearance: checkbox !important;
  appearance: auto !important;
  opacity: 1 !important;
  display: inline-block !important;
  visibility: visible !important;
  width: 16px !important;
  height: 16px !important;
  margin: 3px 0 0 !important;
  flex: 0 0 auto !important;
  accent-color: #e32726;
}
.ake-kvkk-consent input[type="checkbox"]:focus-visible,
.ake-rfq-consent input[type="checkbox"]:focus-visible {
  outline: 2px solid #16223f;
  outline-offset: 2px;
}

/* ---------- MOBILE ---------- */
@media (max-width: 991px) {
  .wt-bnr-inr { min-height: 180px; }
  .wt-bnr-inr .container { padding-bottom: 16px; }
  .page-content .widget_services { position: static; margin-bottom: 24px; }
  .page-content .section-content { padding: 22px 18px; border-radius: 14px; }
  .page-content .section-content ul { grid-template-columns: 1fr; }
  .page-content .section-content h2 { margin-top: 26px; }
  .ake-product-hero-wrap { grid-template-columns: 1fr; transform: translateY(-18px); }
  .ake-product-hero-actions { grid-template-columns: 1fr 1fr; }
  .ake-inner-action-wrap { grid-template-columns: 1fr; transform: translateY(-18px); gap: 14px; }
  .ake-inner-action-buttons { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767px) {
  .page-content .section-full.p-tb80:has(.contact-form) {
    padding-top: 34px !important;
    padding-bottom: 58px !important;
  }
  .page-content .row:has(.contact-form) {
    display: flex;
    flex-direction: column;
  }
  .page-content .row:has(.contact-form) > [class*="col-"]:has(.contact-form) {
    order: 1;
  }
  .page-content .row:has(.contact-form) > [class*="col-"]:not(:has(.contact-form)) {
    order: 2;
  }
  .page-content .row:has(.contact-form) > [class*="col-"] {
    width: 100%;
  }
  .page-content .row:has(.contact-form) .section-head h2 {
    font-size: 22px !important;
    line-height: 1.22 !important;
  }
  .page-content .row:has(.contact-form) .section-content {
    padding: 18px 10px;
  }
  .page-content .contact-one,
  .contact-form .contact-one {
    padding: 18px !important;
  }
}
@media (max-width: 575px) {
  .ake-product-hero-panel { padding: 0 14px; }
  .ake-product-hero-wrap { padding: 12px; gap: 8px; border-radius: 12px; transform: translateY(-32px); }
  .ake-product-hero-copy h2 { margin: 4px 0 6px; font-size: 20px; line-height: 1.16; }
  .ake-product-hero-copy p { font-size: 12.8px; line-height: 1.38; }
  .ake-product-hero-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; }
  .ake-product-hero-kpis li {
    min-height: 54px;
    align-items: center;
    padding: 7px 5px;
    text-align: center;
    border-radius: 10px;
  }
  .ake-product-hero-kpis strong { font-size: 15px; line-height: 1.1; }
  .ake-product-hero-kpis span { margin-top: 2px; font-size: 10px; line-height: 1.16; }
  .ake-product-hero-actions { grid-template-columns: 1fr; gap: 6px; }
  .ake-product-hero-actions .ake-cta-b {
    min-height: 40px;
    padding: 9px 12px;
    white-space: normal;
    text-align: center;
    line-height: 1.18;
  }
  .ake-inner-action-panel { padding: 0 14px; }
  .ake-inner-action-wrap { padding: 14px; gap: 9px; border-radius: 12px; }
  .ake-inner-action-copy h2 { margin: 5px 0 7px; font-size: 19px; line-height: 1.16; }
  .ake-inner-action-copy p { font-size: 12.8px; line-height: 1.38; }
  .ake-inner-action-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .ake-inner-action-facts li { min-height: 54px; padding: 7px 5px; font-size: 10.5px; line-height: 1.16; border-radius: 10px; }
  .ake-inner-action-buttons { grid-template-columns: 1fr; gap: 7px; }
  .ake-inner-action-buttons .ake-cta-b {
    min-height: 42px;
    padding: 10px 12px;
    white-space: normal;
    text-align: center;
    line-height: 1.18;
  }
}

/* === ake-consent.css === */
/* AKE KVKK/DSGVO Consent-Manager — UI */
.ake-consent { position: fixed; left: 0; right: 0; bottom: 0; z-index: 100000; font-family: 'Poppins', sans-serif; pointer-events: none; }
.ake-consent-box { width: min(980px, calc(100vw - 32px)); max-width: calc(100vw - 16px); margin: 0 auto 16px; background: #fff; border: 1px solid #e3e8f0; border-radius: 14px; box-shadow: 0 18px 50px -12px rgba(2,8,40,.4); padding: 18px 22px; pointer-events: auto; }
.ake-consent-main { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; justify-content: space-between; }
.ake-consent-msg { margin: 0; font-size: 13.5px; line-height: 1.6; color: #36425c; flex: 1 1 420px; }
.ake-consent-msg a { color: #233d94; text-decoration: underline; }
.ake-consent-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.akc-btn { padding: 11px 20px; border-radius: 9px; font-size: 13.5px; font-weight: 600; cursor: pointer; border: 1.5px solid transparent; font-family: inherit; transition: background .18s, border-color .18s, color .18s; }
.akc-set { background: #fff; color: #16223f; border-color: #d4dce8; }
.akc-set:hover { border-color: #16223f; background: #f3f6fb; }
.akc-reject { background: #eef1f6; color: #16223f; }
.akc-reject:hover { background: #e2e7ef; }
.akc-accept { background: #16223f; color: #fff; }
.akc-accept:hover { background: #233d94; }
.akc-save { background: #e32726; color: #fff; }
.akc-save:hover { background: #c81f1e; }
.akc-btn:focus-visible { outline: 2px solid #233d94; outline-offset: 2px; }
.ake-consent-cats[hidden] { display: none; }
.ake-consent-cats:not([hidden]) { margin-top: 18px; border-top: 1px solid #eef1f6; padding-top: 16px; display: grid; gap: 12px; }
.ake-cat { display: grid; grid-template-columns: 22px 1fr; row-gap: 2px; column-gap: 10px; align-items: start; cursor: pointer; }
.ake-cat input { grid-row: 1 / span 2; margin-top: 3px; width: 18px; height: 18px; accent-color: #233d94; }
.ake-cat-t { font-size: 13.5px; font-weight: 600; color: #16223f; }
.ake-cat-d { font-size: 12.5px; color: #6b7689; }
.ake-cat input:disabled { opacity: .6; }

/* Click-to-load Platzhalter für Embeds */
.ake-embed-ph { display: flex; align-items: center; justify-content: center; min-height: 220px; background: #f3f6fb; border: 1px dashed #c7d0de; border-radius: 10px; text-align: center; padding: 24px; }
.ake-embed-inner p { margin: 0 0 12px; color: #36425c; font-size: 14px; font-family: 'Poppins', sans-serif; }
.ake-embed-load { padding: 11px 20px; border-radius: 9px; background: #16223f; color: #fff; border: 0; font-weight: 600; font-size: 13.5px; cursor: pointer; font-family: 'Poppins', sans-serif; }
.ake-embed-load:hover { background: #233d94; }
.ake-embed-note { display: block; margin-top: 9px; font-size: 12px; color: #586273; }

@media (max-width: 575px) {
  .ake-consent-box { width: calc(100vw - 12px); max-width: calc(100vw - 12px); padding: 10px 12px; margin: 0 6px 6px; border-radius: 12px; }
  .ake-consent-main { align-items: stretch; gap: 8px; }
  .ake-consent-msg { flex: 1 1 100%; font-size: 12px; line-height: 1.38; }
  .ake-consent-actions { width: 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
  .akc-btn { width: 100%; min-height: 40px; padding: 8px 6px; font-size: 11.75px; border-radius: 8px; white-space: normal; }
  .ake-consent-cats:not([hidden]) { margin-top: 10px; padding-top: 10px; gap: 9px; }
  .ake-cat-t { font-size: 12.75px; }
  .ake-cat-d { font-size: 11.75px; line-height: 1.35; }
}
