/* 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(17,26,48,.86) 0%, rgba(17,26,48,.62) 55%, rgba(17,26,48,.35) 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: 38px 14px; 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-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-metric-grid { grid-template-columns: repeat(3,1fr); }
  .ah-metric:nth-child(3) { border-right: 0; }
}
@media (max-width: 575px) {
  .ah-grid-4, .ah-why-grid, .ah-ref-grid { grid-template-columns: 1fr; }
  .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-dl-grid{ grid-template-columns: 1fr;} }

/* 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}
@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(38px,2.3vw + 20px,62px);line-height:1.08;letter-spacing:-.02em;max-width:20ch;margin-bottom:20px}
.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}
.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:22px 14px 4px;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:14px;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}}
