﻿html{
  scroll-behavior: smooth;
}

body {
  margin: 0;
  padding: 0;
  font-family: HelveticaNowDisplay, "Helvetica Now Display", Helvetica, Arial, sans-serif;

}

.container {
  margin: 0 auto;
  padding: 5rem 17rem;
}

.iGDhJF {
    width: 100%;
    background-color: #f5f5ff;
}

/* ======= HEADER + MEGA MENU (CSS) ======= */
:root{
  --blue:#0000ff;            /* exact blue requested */
  --text:#0b0c0e;
  --muted:#6a6f78;
  --border:#e6e8eb;
  --bg:#ffffff;
  --black:#0f1111;
}
h1, h2, h3, h4, h5, h6 { font-weight: 500; }  


*{box-sizing:border-box}
body{margin:0;font-family: HelveticaNowDisplay, "Helvetica Now Display", Helvetica, Arial, sans-serif;color:var(--text);background:#ffffff}
a{color:inherit;text-decoration:none}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
/* ===== Header (glass bar) ===== */
:root{
  --glass-bg: rgba(255,255,255,.72);
  --glass-grad: linear-gradient(180deg, rgba(255,255,255,.78), rgba(240,242,244,.70));
  --glass-b: rgba(0,0,0,.10);
  --ink: #0f1111;
  --muted:#2d3135;
  --cta-bg:#0e1717;
  --cta-ink:#d8ff75; /* zartes Lime wie im Screenshot */
}

/* ============================ */
/* HYDRA HEADER (Desktop + Mobile) */
/* ============================ */

/* Header Container */
.hydra-header {
  position: fixed;
  inset: 18px 18px auto;
  z-index: 1400;
  display: flex;
  justify-content: center;
  pointer-events: none;
}

.hydra-bar {
  pointer-events: auto;
  position: relative;
  display: flex;
  align-items: center;
  gap: clamp(28px, 5vw, 72px);
  width: min(1650px, 100%);
  min-height: 62px;
  padding: 9px 12px 9px 18px;
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(12,18,28,.10);
  border-radius: 4px;
  overflow: hidden;
  box-shadow: 0 18px 46px rgba(10,18,32,.12), 0 1px 0 rgba(255,255,255,.9) inset;
  backdrop-filter: blur(18px) saturate(160%);
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  color: var(--ink);
  transition: background .28s ease, border-color .28s ease, box-shadow .28s ease, color .28s ease;
}

.hydra-bar::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background: linear-gradient(90deg, rgba(0,0,255,.08), transparent 28%, transparent 72%, rgba(0,0,0,.035));
  opacity:.75;
  transition: opacity .28s ease;
}

/* ============================ */
/* LOGO */
/* ============================ */

.kastl-brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 6px;
  position: relative;
  z-index: 1;
  transition: background .2s ease, transform .2s ease;
}

.kastl-brand:hover {
  background: rgba(0,0,255,.055);
}

.kastl-logo {
  height: 31px;
  width: auto;
  display: block;
}

.hydra-lang {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0 12px;
  min-height: 34px;
  border-left: 1px solid rgba(12,18,28,.12);
  position: relative;
  z-index: 1;
}

.hydra-lang span {
  width: 1px;
  height: 13px;
  background: rgba(12,18,28,.18);
}

.hydra-lang__btn {
  border: 0;
  background: transparent;
  color: rgba(15,17,17,.48);
  font: inherit;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .08em;
  padding: 6px 0;
  cursor: pointer;
  text-transform: uppercase;
  transition: color .2s ease;
}

.hydra-lang__btn:hover,
.hydra-lang__btn.is-active {
  color: #0000ff;
}

/* ============================ */
/* Desktop Navigation */
/* ============================ */

.hydra-nav {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .055em;
  position: relative;
  z-index: 1;
}

.hydra-nav a {
  color: rgba(15,17,17,.68);
  font-weight: 500;
  padding: 11px 13px;
  border-radius: 6px;
  transition: color .2s ease, background .2s ease, box-shadow .2s ease;
}

.hydra-nav a:hover {
  color: var(--ink);
  background: rgba(9,17,31,.055);
}

/* ============================ */
/* Desktop CTA Button */
/* ============================ */

.hydra-actions {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 10px;
  position: relative;
  z-index: 1;
}

.hydra-cta.learn-more {
  position: relative;
  display: inline-flex;
  align-items: center;
  width: auto;
  min-width: 104px;
  height: 40px;
  cursor: pointer;
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(255,255,255,.20);
  border-radius: 2px;
  padding: 0 18px;
  text-decoration: none;
  overflow: hidden;
  box-shadow: 0 10px 24px rgba(0,0,0,.16);
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.hydra-cta.learn-more:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 30px rgba(0,0,0,.20);
  background: #0000ff;
}

.hydra-cta.learn-more .circle {
  display: none;
}

.hydra-cta.learn-more .icon.arrow {
  position: absolute;
  left: 6px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 2px;
}

.hydra-cta.learn-more .icon.arrow::before {
  content: "";
  position: absolute;
  right: 2px;
  top: -5px;
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}

.hydra-cta.learn-more .button-text {
  position: relative;
  inset: auto;
  flex: 1;
  margin-left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #05070d;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 12px;
  letter-spacing: .07em;
  transition: all .45s cubic-bezier(0.65,0,0.076,1);
}

/* Hover Effekt */
.hydra-cta.learn-more:hover .circle {
  background: rgba(255,255,255,.16);
}

.hydra-cta.learn-more:hover .icon.arrow {
  transform: translate(12px, -50%);
}

.hydra-cta.learn-more:hover .button-text {
  color: #fff;
}

/* ============================ */
/* MOBILE ONLY / DESKTOP ONLY */
/* ============================ */

.desktop-only { display: inline-flex !important; }
.mobile-only { display: none !important; }

@media (max-width: 900px) {
  .desktop-only { display: none !important; }
  .mobile-only { 
    display: flex !important;
    align-items: center;
    justify-content: center;
  }
  .hydra-header { inset: 8px 8px auto; }
  .hydra-bar {
    min-height: 48px;
    gap: 12px;
    padding: 5px 6px 5px 9px;
    border-radius: 0;
    box-shadow: 0 8px 24px rgba(10,18,32,.12);
  }
  .kastl-brand { padding: 5px 6px; }
  .kastl-logo { height: 30px; }
  .hydra-lang {
    gap: 6px;
    min-height: 30px;
    padding: 0 8px;
  }
  .hydra-lang__btn {
    font-size: 10px;
    letter-spacing: .06em;
  }
}
/* ============================ */
/* Neuer Mobile Hamburger */
/* ============================ */

/* Swallow Icon Container */
.hydra-burger.swallow-icon {
  width: 32px;
  height: 32px;
  padding: .25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;

  background: rgba(29, 29, 31, .7);
  backdrop-filter: saturate(180%) blur(20px);
  border: 1px solid rgba(66,66,69,0.7);
  border-radius: 2px;

  position: relative;
  z-index: 1500;
}
/* ============================ */
/* Swallow Icon – BitKastl Header Colors */
/* ============================ */

.hydra-burger {
  width: 36px;
  height: 36px;
  padding: .25rem;

  /* GLAS-HINTERGRUND WIE DEIN HEADER */
  background: rgba(255,255,255,.92);
  backdrop-filter: saturate(180%) blur(18px);
  -webkit-backdrop-filter: saturate(180%) blur(18px);

  /* GLEICHE BORDER-FARBE WIE HEADER */
  border: 1px solid rgba(12,18,28,.13);

  border-radius: 4px;
  position: relative;
  cursor: pointer;
  z-index: 1500;

  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(10,18,32,.10);
}

/* STRICHE ? NUTZT DEINE INK FARBE */
.hydra-burger span {
  width: 1.5rem;
  height: .563rem;
  position: absolute;
  top: calc(.25rem + .563rem - 1px);
  left: calc(.25rem - 1px);

  transition: transform .55s cubic-bezier(.86, 0, .07, 1),
              transform-origin .55s cubic-bezier(.86, 0, .07, 1);
}

/* Beide Linien */
.hydra-burger span:before,
.hydra-burger span:after {
  content: "";
  width: .75rem;
  height: .125rem;

  /* HIER ? INK FÜR LINIEN */
  background-color: var(--ink);

  position: absolute;
  bottom: 0;
  border-radius: 2px;

  transition: transform .55s cubic-bezier(.86, 0, .07, 1),
              transform-origin .55s cubic-bezier(.86, 0, .07, 1);
}

/* Links */
.hydra-burger span:before {
  right: 50%;
  transform-origin: 100% 100%;
  transform: rotate(40deg);
}

/* Rechts */
.hydra-burger span:after {
  left: 50%;
  transform-origin: 0 100%;
  transform: rotate(-40deg);
}

/* ============================ */
/* Hover ? fährt hoch */
/* ============================ */

.hydra-burger:hover span {
  transform: translateY(-8px);
}

.hydra-burger:hover span:before {
  transform-origin: 100% 0;
  transform: rotate(-40deg);
}

.hydra-burger:hover span:after {
  transform-origin: 0 0;
  transform: rotate(40deg);
}

/* ============================ */
/* Menü geöffnet ? fährt hoch */
/* ============================ */

body.menu-open .hydra-burger span {
  transform: translateY(-8px);
}

body.menu-open .hydra-burger span:before {
  transform-origin: 100% 0;
  transform: rotate(-40deg);
}

body.menu-open .hydra-burger span:after {
  transform-origin: 0 0;
  transform: rotate(40deg);
}

/* ============================ */
/* Menü geschlossen ? fährt sauber runter */
/* ============================ */

body:not(.menu-open) .hydra-burger span {
  transform: translateY(0);
}

body:not(.menu-open) .hydra-burger span:before {
  transform-origin: 100% 100%;
  transform: rotate(40deg);
}

body:not(.menu-open) .hydra-burger span:after {
  transform-origin: 0 100%;
  transform: rotate(-40deg);
}

/* Mobile header refinement */
@media (max-width: 900px) {
  .hydra-header {
    inset: 10px 12px auto;
  }

  .hydra-bar {
    width: min(430px, calc(100vw - 24px));
    min-height: 52px;
    gap: 8px;
    padding: 6px 8px 6px 10px;
    border-radius: 2px;
    overflow: hidden;
  }

  .kastl-brand {
    flex: 0 1 auto;
    max-width: min(210px, 48vw);
    padding: 4px 6px;
  }

  .kastl-logo {
    height: 28px;
    max-width: 100%;
    object-fit: contain;
  }

  .hydra-lang {
    flex: 0 0 auto;
    min-height: 30px;
    padding: 0 9px;
    gap: 6px;
  }

  .hydra-actions {
    margin-left: auto;
    flex: 0 0 auto;
  }

  .hydra-burger {
    width: 38px;
    height: 38px;
    padding: 0;
    border-radius: 2px;
    background: rgba(255,255,255,.92);
    box-shadow: 0 6px 18px rgba(10,18,32,.13);
  }

  .hydra-burger span,
  .hydra-burger span::before,
  .hydra-burger span::after {
    position: absolute;
    left: 50%;
    right: auto;
    bottom: auto;
    width: 17px;
    height: 2px;
    border-radius: 2px;
    background: var(--ink);
    transform-origin: center;
    transition: transform .24s ease, opacity .2s ease, background .2s ease;
  }

  .hydra-burger span {
    top: 50%;
    transform: translate(-50%, -50%);
  }

  .hydra-burger span::before,
  .hydra-burger span::after {
    content: "";
  }

  .hydra-burger span::before {
    top: -6px;
    transform: translateX(-50%);
  }

  .hydra-burger span::after {
    top: 6px;
    transform: translateX(-50%);
  }

  .hydra-burger:hover span {
    transform: translate(-50%, -50%);
  }

  .hydra-burger:hover span::before,
  .hydra-burger:hover span::after {
    transform: translateX(-50%);
  }

  body:not(.menu-open) .hydra-burger span {
    transform: translate(-50%, -50%);
  }

  body:not(.menu-open) .hydra-burger span::before {
    top: -6px;
    transform-origin: center;
    transform: translateX(-50%);
  }

  body:not(.menu-open) .hydra-burger span::after {
    top: 6px;
    transform-origin: center;
    transform: translateX(-50%);
  }

  body.menu-open .hydra-burger span {
    background: transparent;
    transform: translate(-50%, -50%);
  }

  body.menu-open .hydra-burger span::before {
    top: 0;
    transform: translateX(-50%) rotate(45deg);
  }

  body.menu-open .hydra-burger span::after {
    top: 0;
    transform: translateX(-50%) rotate(-45deg);
  }
}

@media (max-width: 380px) {
  .hydra-bar {
    width: min(390px, calc(100vw - 16px));
    padding-left: 8px;
  }

  .kastl-brand {
    max-width: 45vw;
  }

  .kastl-logo {
    height: 25px;
  }

  .hydra-lang {
    padding: 0 7px;
  }
}


/* Die Linien (Swallow Mask) */
.hydra-burger.swallow-icon span {
  width: 1.5rem;
  height: .563rem;
  background: var(--ink);

  mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 20 8' xmlns='http://www.w3.org/2000/svg'><path d='M0 0h20v2H0zm0 6h20v2H0z' fill='white'/></svg>");
  -webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 20 8' xmlns='http://www.w3.org/2000/svg'><path d='M0 0h20v2H0zm0 6h20v2H0z' fill='white'/></svg>");

  position: absolute;
  top: calc(.25rem + .563rem - 1px);
  left: calc(.25rem - 1px);

  transition:
    transform .65s cubic-bezier(.86, 0, .07, 1),
    transform-origin .65s cubic-bezier(.86, 0, .07, 1);
}

/* Burger ? Swallow (Rotation) */
body.menu-open .hydra-burger.swallow-icon span {
  transform: rotate(90deg);
  transform-origin: center;
}

/* ============================ */
/* SLIDE-IN PANEL TOP ? DOWN */
/* ============================ */

.hydra-mobile-menu {
    position: fixed;
    top: 74px;
    left: 18px;
    right: 18px;
    width: auto;
    background: rgba(255,255,255,.96);
    border: 1px solid rgba(12,18,28,.10);
    backdrop-filter: blur(18px) saturate(160%);
    -webkit-backdrop-filter: blur(18px) saturate(160%);
    border-radius: 8px;
    padding: 14px 14px 16px;
    transform: translateY(-140%);
    opacity: 0;
    transition: transform .45s cubic-bezier(.4, 0, .2, 1), opacity .35s ease;
    z-index: 1300;
    box-shadow: 0 24px 60px rgba(10,18,32,.18);
}

body.menu-open .hydra-mobile-menu {
  transform: translateY(0);
  opacity: 1;
}

@media (max-width: 900px) {
  .hydra-mobile-menu {
    top: 72px;
    left: 50%;
    right: auto;
    width: min(430px, calc(100vw - 24px));
    transform: translate(-50%, -140%);
    border-radius: 2px;
  }

  body.menu-open .hydra-mobile-menu {
    transform: translate(-50%, 0);
  }
}

@media (max-width: 380px) {
  .hydra-mobile-menu {
    width: min(390px, calc(100vw - 16px));
  }
}

/* ============================ */
/* LIST */
/* ============================ */

.hydra-mobile-menu ul {
  margin: 0; padding: 0;
  list-style: none;
}

.hydra-mobile-menu li {
  display: flex;
  flex-direction: column;
  opacity: 0;
  transform: translateY(-12px);
  animation: navItemIn .45s ease forwards;
  animation-delay: calc(var(--i) * 0.06s + .20s);
}

/* ============================ */
/* LINKS */
/* ============================ */

.hydra-mobile-menu li a {
  display: flex;
  align-items: center;
  gap: 13px;
  font-size: 18px;
  font-weight: 500;
  color: var(--ink);
  padding: 13px 8px;
  border-radius: 6px;
  text-decoration: none;
  transition: color .2s ease, background .2s ease;
}

.hydra-mobile-menu svg {
  width: 36px;
  height: 36px;
  padding: 8px;
  border: 1px solid rgba(12,18,28,.11);
  border-radius: 6px;
  background: #fff;
  stroke: var(--ink);
  opacity: .78;
  transition: stroke .2s ease, opacity .2s ease, border-color .2s ease, background .2s ease;
}

.hydra-mobile-menu li a:hover {
  color: var(--blue);
  background: rgba(0,0,255,.055);
}

.hydra-mobile-menu li a:hover svg {
  stroke: var(--blue);
  opacity: 1;
  border-color: rgba(0,0,255,.22);
}

/* ============================ */
/* DIVIDERS */
/* ============================ */

.divider {
  width: 100%;
  border-bottom: 1px solid rgba(12,18,28,.08);
  margin: 3px 0;
}

.hydra-mobile-menu li:last-child .divider {
  display: none;
}

/* ============================ */
/* ITEM ANIMATION */
/* ============================ */

@keyframes navItemIn {
  0% { opacity: 0; transform: translateY(-12px); }
  100% { opacity: 1; transform: translateY(0); }
}

/* Stagger Animation */
.hydra-mobile-menu li {
  opacity: 0;
  transform: translateY(-10px);
  pointer-events: none;

  animation: navItemFade .45s ease forwards;
  animation-delay: calc(var(--i) * 0.07s + 0.15s);
}

body:not(.menu-open) .hydra-mobile-menu li {
  animation: none;
  opacity: 0;
  transform: translateY(-10px);
}

@keyframes navItemFade {
  0% { opacity: 0; transform: translateY(-10px); }
  100% { opacity: 1; transform: translateY(0); pointer-events: auto; }
}

/* Global mobile hamburger fix */
@media (max-width: 900px) {
  .hydra-burger span {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    width: 18px !important;
    height: 2px !important;
    background: var(--ink) !important;
    border-radius: 999px !important;
    transform: translate(-50%, -50%) !important;
    transform-origin: center !important;
    mask: none !important;
    -webkit-mask: none !important;
  }

  .hydra-burger span::before,
  .hydra-burger span::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    width: 18px !important;
    height: 2px !important;
    background: var(--ink) !important;
    border-radius: 999px !important;
    transform-origin: center !important;
  }

  body:not(.menu-open) .hydra-burger span::before,
  .hydra-burger span::before {
    top: -6px !important;
    transform: translateX(-50%) rotate(0deg) !important;
  }

  body:not(.menu-open) .hydra-burger span::after,
  .hydra-burger span::after {
    top: 6px !important;
    transform: translateX(-50%) rotate(0deg) !important;
  }

  .hydra-burger:hover span {
    transform: translate(-50%, -50%) !important;
  }

  .hydra-burger:hover span::before {
    transform: translateX(-50%) rotate(0deg) !important;
  }

  .hydra-burger:hover span::after {
    transform: translateX(-50%) rotate(0deg) !important;
  }

  body.menu-open .hydra-burger span {
    background: transparent !important;
    transform: translate(-50%, -50%) !important;
  }

  body.menu-open .hydra-burger span::before {
    top: 0 !important;
    transform: translateX(-50%) rotate(45deg) !important;
  }

  body.menu-open .hydra-burger span::after {
    top: 0 !important;
    transform: translateX(-50%) rotate(-45deg) !important;
  }
}

/* ============================ */
/* BACKDROP */
/* ============================ */

.hydra-menu-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(6,10,18,.24);
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s ease;
  z-index: 1200;
}

#google_translate_element,
.goog-te-banner-frame,
.goog-te-banner-frame.skiptranslate,
.goog-te-balloon-frame,
.goog-te-gadget,
.skiptranslate iframe,
body > .skiptranslate,
iframe.goog-te-banner-frame,
iframe[name="goog-te-banner-frame"],
.VIpgJd-ZVi9od-ORHb,
.VIpgJd-ZVi9od-ORHb-OEVmcd,
.VIpgJd-ZVi9od-aZ2wEe-wOHMyf {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  border: 0 !important;
}

html,
body {
  top: 0 !important;
  margin-top: 0 !important;
  transform: none !important;
}

body.menu-open .hydra-menu-backdrop {
  opacity: 1;
  pointer-events: auto;
}

/* ============================ */
/* DEVICE VISIBILITY */
/* ============================ */

.mobile-only { display: none !important; }
@media (max-width: 900px) {
  .mobile-only { display: flex !important; }
  .desktop-only { display: none !important; }
}

/* HERO */
.hero {
  position: relative;
  height: 80vh;
  width: 100%;
  overflow: hidden;
}

/* SLIDER TRACK */
.hero__slider {
  display: flex;
  height: 100%;
  flex-wrap: nowrap;
  transition: transform 0.5s cubic-bezier(0.3, 0.6, 0.4, 1);
}

/* SLIDE */
.hero__slide {
  flex: 0 0 100%;
  height: 100%;
  background: var(--bg) center/cover no-repeat;
  position: relative;
}

/* SPLIT SCREEN */
.hero__slide.split {
  display: flex;
}
.split-left, .split-right {
  flex: 1;
  background: var(--bg) center/cover no-repeat;
}

/* OVERLAY FOR ALL SLIDES */
.hero__slide::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.25);
  z-index: 1;
}

.hero__content {
  position: absolute;
  bottom: 12%;     /* Abstand vom unteren Rand */
  top: auto;       /* wichtig */
  transform: none; /* wichtig */
  width: 100%;
  z-index: 2;
}


/* ALIGN WITH NAVBAR CONTAINER */
.hero__content .inner {
  max-width: 1650px;            /* exakt wie dein Header */
  margin: 0 auto;          /* gleicher Startpunkt wie Nav */
  color: white;
}

/* HEADLINE */
.hero__content h1 {
  font-size: 46px;
  font-weight: 600;
  margin-bottom: 15px;
  line-height: 1.2;
}

.subtitel strong{
  color: #0000ff;
}

.hero__content h2 {
  font-size: 46px;
  font-weight: 600;
  margin-bottom: 15px;
  line-height: 1.2;
}
.hero__content h3 {
  font-size: 46px;
  font-weight: 600;
  margin-bottom: 15px;
  line-height: 1.2;
}

/* PARAGRAPH */
.hero__content p {
  margin-top: 12px;
  font-size: 16px;
  opacity: 0.9;
  font-weight: 500;
}

/* BUTTON */
.hero-btn {
  display: inline-block;
  margin-top: 8px;
  padding: 12px 30px;
  font-weight: 400;
  background: #000fff;
  color: #ffffff;
  border-radius: 2px;
  text-decoration: none;
  transition: 0.25s ease;
}
.hero-btn:hover {
  background: #2663ff;
}

/* Progress Bar Container */
.hero__progress {
  position: absolute;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 8px;               /* enger zusammen */
  width: 260px;           /* länger! */
  z-index: 10;
}

/* Leere Balken */
.progress-line {
  flex: 1;
  height: 2px;                           /* dicker */
  background: rgba(255,255,255,0.25);    /* heller grau */
  border-radius: 2px;
  overflow: hidden;
}

/* Füllung */
.progress-line span {
  display: block;
  width: 0%;
  height: 100%;
  background: #fff;
  border-radius: 2px;
}
@media (max-width: 768px) {

  /* Höhe reduzieren, damit Slider nicht zu groß wird */
  .hero {
    height: 75vh;
  }

  /* Textposition höher */
  .hero__content {
    bottom: 8%;
  }

  /* Innerer Content enger */
  .hero__content .inner {
    max-width: 90%;
  }

  /* Headline verkleinern */
  .hero__content h1 {
    font-size: 27px;
    line-height: 1.25;
    margin-bottom: 10px;
  }

  .hero__content h2 {
    font-size: 28px;
    line-height: 1.25;
    margin-bottom: 10px;
  }

  .hero__content h3 {
    font-size: 28px;
    line-height: 1.25;
    margin-bottom: 10px;
  }

  /* Paragraph kleiner & weniger Abstand */
  .hero__content p {
    font-size: 14px;
    margin-top: 8px;
  }

  /* Button kompakter */
  .hero-btn {
    padding: 10px 22px;
    font-size: 14px;
    margin-top: 6px;
    border-radius: 2px;
  }

  /* Progressbars höher setzen */
  .hero__progress {
    bottom: 22px;
    width: 180px; /* auf kleineren Screens kürzer */
    gap: 6px;
  }

  .progress-line {
    height: 3px;
  }

}

@media (min-width: 769px) and (max-width: 1180px) {

  /* etwas höhere Slides als Mobile */
  .hero {
    height: 80vh;
  }

  /* Position leicht höher für bessere Sichtbarkeit */
  .hero__content {
    bottom: 20%;
  }

  .hero__content .inner {
    max-width: 85%;
    padding-left: 40px;   /* wie Desktop, aber schmaler Container */
  }

  /* Headline mittelgroß */
  .hero__content h1 {
    font-size: 36px;
    margin-bottom: 12px;
  }

  /* Paragraph angenehme Größe */
  .hero__content p {
    font-size: 15px;
  }

  /* Button etwas größer als auf Mobile */
  .hero-btn {
    padding: 11px 26px;
    font-size: 15px;
  }

  /* Progressbars */
  .hero__progress {
    bottom: 32px;
    width: 220px;
    gap: 7px;
  }

  .progress-line {
    height: 4px;
  }
}

/* iPad Querformat (Landscape) – typischer Bereich 1024–1366px Breite und geringe Höhe */
@media (min-width: 1024px) and (max-width: 1366px) and (max-height: 900px) {

  /* Slider flacher, damit Content perfekt sitzt */
  .hero {
    height: 70vh;
  }

  .hero__content {
    bottom: 18%;  /* etwas höher wegen geringer Höhe */
  }

  .hero__content .inner {
    max-width: 80%;
    padding-left: 60px;   /* wirkt modern & wie Desktop, aber kompakter */
    padding-right: 20px;
  }

  /* Headline – zwischen Desktop und Tablet */
  .hero__content h1 {
    font-size: 40px;
    line-height: 1.22;
    margin-bottom: 15px;
  }

  /* Paragraph leicht größer als Tablet */
  .hero__content p {
    font-size: 17px;
    margin-top: 10px;
  }

  /* Button – ergonomisch groß genug für Touch */
  .hero-btn {
    padding: 12px 28px;
    font-size: 16px;
    border-radius: 2px;
  }

  /* Progressbar etwas höher wegen der geringen Höhe */
  .hero__progress {
    bottom: 28px;
    width: 240px;
    gap: 8px;
  }

  .progress-line {
    height: 4px;
  }
}
/* iPad Pro (11" & 12.9") Landscape */
@media (min-width: 1194px) and (max-width: 1366px) and (max-height: 1024px) {

  .hero {
    height: 68vh; /* etwas flacher als Desktop */
  }

  .hero__content {
    bottom: 17%; /* ideal für Querformat mit weniger Höhe */
  }

  .hero__content .inner {
    max-width: 75%;
    padding-left: 60px;
    padding-right: 20px;
  }

  .hero__content h1 {
    font-size: 44px;
    line-height: 1.2;
    margin-bottom: 14px;
  }

  .hero__content p {
    font-size: 18px;
  }

  .hero-btn {
    padding: 14px 34px;
    font-size: 17px;
  }

  .hero__progress {
    bottom: 32px;
    width: 260px;
    gap: 8px;
  }

  .progress-line {
    height: 4px;
  }
}
/* =========================
   MACBOOK HERO OPTIMIZATION
   ========================= */

@media (min-width: 1280px) and (max-width: 1728px) {

  /* Hero insgesamt etwas flacher */
  .hero {
    height: 82vh; /* vorher 90vh ? auf MacBook zu dominant */
  }

  /* Content etwas höher, damit es nicht "unten klebt" */
  .hero__content {
    bottom: 15%;
  }

  /* Container exakt MacBook-typisch */
  .hero__content .inner {
    max-width: 1500px;
    padding-left: 80px;
    padding-right: 40px;
  }

  /* Headline feiner skaliert */
  .hero__content h1 {
    font-size: 42px;   /* vorher 46px */
    line-height: 1.18;
  }



  /* Text minimal ruhiger */
  .hero__content p {
    font-size: 15.5px;
    max-width: 520px;
  }

  /* Button minimal eleganter */
  .hero-btn {
    padding: 11px 28px;
    font-size: 15px;
  }

  /* Progressbar visuell besser zentriert */
  .hero__progress {
    bottom: 34px;
    width: 240px;
  }

  .progress-line {
    height: 3px;
  }
}

/* Industries - Giga inspired */
.bitkastl-industries {
  --industry-notch-bg: #efefef;
  background: linear-gradient(to bottom, #efefef 0 50%, #05080a 30% 110%);
  padding: 96px 0 110px;
}

.industries-shell {
  width: min(1650px, calc(100% - 56px));
  margin: 0 auto;
}

.industries-label {
  margin: 0 0 14px;
  font-size: 13px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #5f6368;
  font-weight: 600;
}

.industries-title {
    margin: 0;
    max-width: 40ch;
    font-size: clamp(36px, 4.1vw, 50px);
    line-height: 1.02;
    font-weight: 400;
    color: #0f1214;
}

.industries-title span {
  color: #0000ff;
}

.industries-lead {
  margin: 16px 0 54px;
  max-width: 62ch;
  font-size: 20px;
  line-height: 1.4;
  color: #3f444a;
  font-weight: 500;
}

.industries-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.industry-panel {
  position: relative;
  min-height: 690px;
  border: none;
  overflow: hidden;
  background: #080b0f;
  isolation: isolate;
  box-shadow: none;
}

.industry-panel__media {
  position: absolute;
  inset: -12% 0 0;
}

.industry-panel__media img {
  width: 112%;
  height: 118%;
  object-fit: cover;
  transform: translate3d(0, 0, 0) scale(1.12);
  will-change: transform;
}

.industry-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      180deg,
      rgba(1, 2, 4, 0.88) 0%,
      rgba(1, 2, 4, 0.54) 22%,
      rgba(1, 2, 4, 0.14) 42%,
      rgba(1, 2, 4, 0.14) 60%,
      rgba(1, 2, 4, 0.74) 84%,
      rgba(1, 2, 4, 0.96) 100%
    );
  z-index: 1;
}

.industry-panel::after {
  content: "";
  position: absolute;
  top: -1px;
  right: -1px;
  width: 0;
  height: 0;
  border-top: 50px solid var(--industry-notch-bg);
  border-left: 50px solid transparent;
  z-index: 3;
  pointer-events: none;
}

.industry-panel__top {
  position: absolute;
  z-index: 2;
  top: 38px;
  left: 30px;
}

.industry-panel__stat {
  border-left: 2px solid rgba(255, 255, 255, 0.88);
  padding-left: 14px;
  color: #fff;
}

.industry-panel__kpi {
  display: block;
  font-size: 34px;
  line-height: 0.94;
  font-weight: 300;
  letter-spacing: -0.02em;
}

.industry-panel__unit {
  display: block;
  margin-top: 6px;
  font-size: 13px;
  line-height: 1;
  font-weight: 400;
  letter-spacing: 0.08em;
}

.industry-panel__content {
  position: absolute;
  z-index: 2;
  left: 30px;
  right: 28px;
  bottom: 26px;
  color: #fff;
}

.industry-panel__content h3 {
    margin: 0 0 14px;
    font-size: 32px;
    line-height: 1.03;
    font-weight: 400;
    max-width: 25ch;
    letter-spacing: -0.01em;
}

.industry-panel__content p {
  margin: 0 0 24px;
  max-width: 70ch;
  font-size: 17px;
  line-height: 1.35;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.9);
}

.industry-panel__cta {
  --primary-color: #ffffff;
  --hovered-color: #000fff;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  position: relative;
  color: var(--primary-color);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  text-decoration: none;
  line-height: 1;
  transition: color 0.25s ease;
}

.industry-panel__cta:visited {
  color: var(--primary-color);
}

.industry-panel__cta::after {
  position: absolute;
  content: "";
  width: 0;
  left: 0;
  bottom: -7px;
  background: var(--hovered-color);
  height: 2px;
  transition: 0.3s ease-out;
}

.industry-panel__cta-text {
  margin: 0;
  position: relative;
}

.industry-panel__cta svg {
  width: 15px;
  color: inherit;
  transition: transform 0.2s ease, color 0.25s ease;
}

.industry-panel__cta:hover::after {
  width: 100%;
}

.industry-panel__cta:hover {
  color: var(--hovered-color);
}

.industry-panel__cta:hover svg {
  transform: translateX(4px);
}

@media (max-width: 1100px) {
  .bitkastl-industries {
    background: linear-gradient(to bottom, #efefef 0 46%, #05080a 46% 100%);
    padding: 74px 0 92px;
  }

  .industries-shell {
    width: min(1320px, calc(100% - 36px));
  }

  .industries-lead {
    margin-bottom: 34px;
    font-size: 18px;
  }

  .industries-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .industry-panel {
    min-height: 520px;
  }

  .industry-panel__content h3 {
    font-size: clamp(28px, 5vw, 36px);
  }

  .industry-panel__content p {
    font-size: 17px;
    max-width: 30ch;
  }

  .industry-panel__kpi {
    font-size: 32px;
  }

  .industry-panel__unit {
    font-size: 18px;
  }

  .industry-panel__cta {
    font-size: 13px;
    letter-spacing: 0.1em;
  }
}

@media (max-width: 680px) {
  .bitkastl-industries {
    --industry-notch-bg: #ffffff;
    background: linear-gradient(to bottom, #ffffff 0 77%, #05080a 30% 100%);
    padding: 60px 0 78px;
  }

  .industries-shell {
    width: calc(100% - 30px);
  }

  .industries-label {
    font-size: 11px;
  }

  .industries-title {
    font-size: clamp(28px, 8vw, 34px);
    line-height: 1.12;
    font-weight: 400;
    max-width: 16ch;
  }

  .industries-lead {
    font-size: 16px;
    margin-bottom: 26px;
    line-height: 1.45;
    max-width: 34ch;
  }

  .industry-panel {
    min-height: 420px;
  }

  .industry-panel::after {
    border-top-width: 30px;
    border-left-width: 30px;
  }

  .industry-panel__top {
    top: 20px;
    left: 18px;
  }

  .industry-panel__content {
    left: 18px;
    right: 16px;
    bottom: 18px;
  }

  .industry-panel__content h3 {
    font-size: 30px;
  }

  .industry-panel__content p {
    font-size: 14px;
    margin-bottom: 16px;
  }

  .industry-panel__kpi {
    font-size: 30px;
  }

  .industry-panel__unit {
    font-size: 13px;
  }

  .industry-panel__cta {
    font-size: 11px;
    gap: 8px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .industry-panel__media img {
    transform: none !important;
  }
}
.service-section {
  --service-accent: #000fff;
  --service-text: #0d1d33;
  --service-muted: #4f6380;
  --service-line: #d8e0ea;
  --service-bg: #eef3f8;
  padding: 90px 24px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.85), rgba(238, 243, 248, 1)),
    repeating-linear-gradient(90deg, transparent 0 84px, rgba(14, 33, 58, 0.04) 84px 85px),
    var(--service-bg);
}

.service-shell {
  width: min(1650px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(290px, 430px) minmax(0, 1fr);
  gap: 22px;
}

.service-head {
  padding: 26px;
  background: #fff;
  border: 1px solid var(--service-line);
  clip-path: polygon(0 0, calc(100% - 24px) 0, 100% 24px, 100% 100%, 0 100%);
  box-shadow: 0 14px 28px rgba(15, 37, 66, 0.08);
  align-self: start;
  position: sticky;
  top: 104px;
}

.service-kicker {
  margin: 0 0 12px;
  color: #4b5f7e;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 11px;
  font-weight: 600;
}

.service-head h2 {
  margin: 0;
  color: var(--service-text);
  font-size: clamp(34px, 3vw, 52px);
  line-height: 1.02;
  letter-spacing: -0.015em;
}

.service-head h2 span {
  color: var(--service-accent);
}

.service-intro {
  margin: 14px 0 0;
  color: var(--service-muted);
  font-size: 15px;
  line-height: 1.65;
  max-width: 34ch;
}

.service-main-cta {
  display: inline-flex;
  margin-top: 20px;
  text-decoration: none;
  color: #fff;
  background: var(--service-accent);
  border: 1px solid var(--service-accent);
  padding: 11px 16px;
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 0.02em;
  clip-path: polygon(0 0, calc(100% - 11px) 0, 100% 11px, 100% 100%, 0 100%);
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.service-main-cta:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(0, 15, 255, 0.3);
}

.service-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 18px;
}

.service-tile {
  grid-column: span 2;
  background: #fff;
  border: 1px solid var(--service-line);
  clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 18px, 100% 100%, 0 100%);
  padding: 22px 20px 20px;
  min-height: 196px;
  box-shadow: 0 10px 22px rgba(17, 40, 69, 0.07);
  position: relative;
}

.service-tile::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 4px;
  background: linear-gradient(90deg, var(--service-accent), rgba(0, 15, 255, 0));
}

.service-index {
  display: inline-block;
  margin-bottom: 12px;
  color: #7389a4;
  font-size: 12px;
  letter-spacing: 0.08em;
  font-weight: 700;
}

.service-tile h3 {
  margin: 0 0 10px;
  font-size: 26px;
  line-height: 1.08;
  letter-spacing: -0.01em;
  color: var(--service-text);
}

.service-tile p {
  margin: 0;
  color: var(--service-muted);
  font-size: 14px;
  line-height: 1.65;
}

.service-tile--feature {
  grid-column: span 4;
  min-height: 250px;
  background:
    linear-gradient(130deg, rgba(0, 15, 255, 0.08), rgba(255, 255, 255, 0) 36%),
    #ffffff;
}

.service-tile--feature ul {
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px;
}

.service-tile--feature li {
  position: relative;
  padding-left: 16px;
  color: #324b69;
  font-size: 13px;
}

.service-tile--feature li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 7px;
  height: 7px;
  background: var(--service-accent);
}

.service-tile--accent {
  border-color: #bdc9ff;
  background:
    linear-gradient(155deg, rgba(0, 15, 255, 0.1), rgba(255, 255, 255, 0) 42%),
    #fff;
}

@media (max-width: 1180px) {
  .service-shell {
    grid-template-columns: 1fr;
  }

  .service-head {
    position: static;
  }

  .service-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .service-tile,
  .service-tile--feature {
    grid-column: span 1;
  }
}

@media (max-width: 700px) {
  .service-section {
    padding: 64px 14px;
  }

  .service-head {
    padding: 20px 16px;
  }

  .service-head h2 {
    font-size: 34px;
  }

  .service-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .service-tile h3 {
    font-size: 22px;
  }
}

    .bk-pricing3{
      font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
      padding: 54px 18px 72px;
      background: #ffffff;
      color:#0f172a;
          padding-top: 0;
    }

    /* Blue background container: centered, max 1680px, full width until that */
    .bk-pricing3__hero{
      width: min(1650px, 100%);
      margin: 0 auto;
      position: relative;
      border-radius: 2px;
      padding: 46px 22px 360px; /* space for overlap */
      overflow: hidden;
      color:#fff;
      box-shadow: 0 18px 50px rgba(2, 8, 23, 0.16);
      background:
        radial-gradient(1200px 520px at 30% 15%, rgba(255,255,255,.22), rgba(255,255,255,0) 60%),
        linear-gradient(135deg, #0d63ff, #0d63ff);
    }

    /* Decorative blocks */
    .bk-pricing3__decor{ position:absolute; inset:0; pointer-events:none; opacity:.95; }
    .bk-pricing3__block{
      position:absolute;
      border-radius: 2px;
      background: rgb(255 255 255 / 40%);
      opacity: .55;
    }
    .bk-pricing3__block--a{ width:240px; height:240px; left:65px; top:56px; opacity:.98; }
    .bk-pricing3__block--b{ width:240px; height:240px; left:95px; top:105px; opacity:.58; border-radius: 2px; }
    .bk-pricing3__block--c{ width:240px; height:240px; left:125px; top:159px; opacity:.38; border-radius: 2px; }
    .bk-pricing3__block--d{ width:240px; height:240px; right:125px; top:159px; opacity:.38; border-radius: 2px; }
    .bk-pricing3__block--e{ width:240px; height:240px; right:95px; top:105px; opacity:.58; border-radius: 2px; }
    .bk-pricing3__block--f{ width:240px; height:240px; right:65px; top:56px; opacity:.98; border-radius: 2px; }

    /* Mobile: Diagonale – oben eng, unten weiter außen */
@media (max-width: 768px){

  .bk-pricing3{
    position: relative;
    overflow: hidden;
  }

  .bk-pricing3__block--a,
  .bk-pricing3__block--b,
  .bk-pricing3__block--c,
  .bk-pricing3__block--d,
  .bk-pricing3__block--e,
  .bk-pricing3__block--f{
    display: none;
    width: 180px;
    height: 180px;
    border-radius: 2px;

    left: 50%;
    right: auto;
    transform: translateX(-50%); /* Basis */
  }

  /* A–C: nur leicht versetzt */
  .bk-pricing3__block--a{
    top: 40px;
    transform: translateX(calc(-50% - 24px));
    opacity: .30;
  }

  .bk-pricing3__block--b{
    top: 95px;
    transform: translateX(calc(-50% - 8px));
    opacity: .24;
  }

  .bk-pricing3__block--c{
    top: 150px;
    transform: translateX(calc(-50% + 8px));
    opacity: .18;
  }

  /* D–F: weiter nach außen */
  .bk-pricing3__block--d{
    top: 205px;
    transform: translateX(calc(-50% + 36px));
    opacity: .14;
  }

  .bk-pricing3__block--e{
    top: 260px;
    transform: translateX(calc(-50% + 68px));
    opacity: .10;
  }

  .bk-pricing3__block--f{
    top: 315px;
    transform: translateX(calc(-50% + 100px));
    opacity: .08;
  }
}

    .bk-pricing3__header{
      position: relative;
      z-index: 2;
      text-align: center;
      max-width: 860px;
      margin: 0 auto;
      padding: 0 10px;
    }

    .bk-pricing3__title{
      margin: 0;
      font-weight: 700;
      letter-spacing: -0.-0.88px;
      line-height: 1.08;
      font-size: clamp(26px, 3.1vw, 44px);
    }

    .bk-pricing3__subtitle{
      margin: 10px auto 0;
      max-width: 720px;
      font-size: 13.5px;
      line-height: 1.55;
      color: rgba(255,255,255,.86);
    }

    /* Toggle pill */
    .bk-pricing3__toggle{
      margin: 18px auto 0;
      width: fit-content;
      display: inline-flex;
      padding: 6px;
      border-radius: 2px;
      background: rgba(255,255,255,.16);
      box-shadow: inset 0 0 0 1px rgba(255,255,255,.20);
      gap: 6px;
      user-select:none;
    }

    .bk-pricing3__tab{
      border:0;
      cursor:pointer;
      padding: 10px 14px;
      border-radius: 2px;
      font-weight: 700;
      font-size: 14px;
      color: rgba(255,255,255,.88);
      background: transparent;
      transition: transform .12s ease, background .18s ease, color .18s ease;
      outline: none;
    }
    .bk-pricing3__tab:hover{ transform: translateY(-1px); }
    .bk-pricing3__tab[aria-selected="true"]{
      background:#fff;
      color:#0f172a;
      box-shadow: 0 10px 22px rgba(2,8,23,.22);
    }

    /* Cards container: narrower ("thin") and centered */
    .bk-pricing3__cards{
      width: min(1240px, 100%);  /* makes the card row thinner vs the 1680 hero */
      margin: -316px auto 0;      /* overlap over blue edge */
      position: relative;
      z-index: 3;
      padding: 0 10px;
    }

    .bk-pricing3__grid{
      display:grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 18px;
      align-items: stretch;
    }

    .bk3-card{
      background:#fff;
      border-radius: 2px;
      padding: 18px 18px 16px;
      box-shadow: 0 16px 40px rgba(2,8,23,.14);
      border: 1px solid rgba(2,8,23,.06);
      display:flex;
      flex-direction:column;
      min-height: 360px;
      transition: transform .18s ease, box-shadow .18s ease;
    }
    .bk3-card:hover{
      transform: translateY(-4px);
      box-shadow: 0 20px 55px rgba(2,8,23,.16);
    }

    .bk3-card__top{ display:flex; align-items:center; gap:10px; }
    .bk3-card__dot{
      width:14px; height:14px; border-radius: 2px;
      background:#1d4ed8;
      box-shadow: 0 0 0 6px rgba(37,99,235,.16);
      flex:0 0 auto;
    }
    .bk3-card__name{ font-weight:900; font-size:13px; color:#0f172a; }

    .bk3-card__price{
      margin-top: 12px;
      font-weight: 900;
      letter-spacing: -0.02em;
      display:flex;
      align-items:flex-end;
      gap: 10px;
    }
    .bk3-card__amount{ font-size:36px; line-height:1; color:#0f172a; }
    .bk3-card__currency{ font-size:12px; color:#64748b; margin-bottom:6px; font-weight:800; }

    .bk3-card__desc{
      margin-top:10px;
      font-size:12.5px;
      line-height:1.55;
      color:#6b7280;
      max-width:48ch;
    }

    .bk3-card__list{
      margin: 14px 0 0;
      padding: 0;
      list-style:none;
      display:flex;
      flex-direction:column;
      gap:10px;
    }
    .bk3-card__li{
      display:flex;
      gap:10px;
      align-items:flex-start;
      font-size:12.5px;
      color:#0f172a;
    }
    .bk3-card__check{
      width:18px; height:18px; border-radius: 2px;
      background: rgba(37,99,235,.12);
      display:grid; place-items:center;
      margin-top:1px;
      flex:0 0 auto;
    }
    .bk3-card__check svg{ width:12px; height:12px; fill:#2563eb; display:block; }

    .bk3-card__spacer{ flex:1; }

    .bk3-card__btn{
      margin-top: 18px;
      width: 100%;
      border:0;
      cursor:pointer;
      padding: 12px 14px;
      border-radius: 2px;
      font-weight: 900;
      font-size: 13px;
      color:#fff;
      background:#1d4ed8;
      box-shadow: 0 10px 22px rgba(29,78,216,.28);
      transition: transform .12s ease, filter .18s ease;
    }
    .bk3-card__btn:hover{ transform: translateY(-1px); filter: brightness(1.05); }
    .bk3-card__btn:active{ transform: translateY(0px); }

    .bk3-card--featured{
      background: #ffffff;
      border: 1px solid rgba(37,99,235,.20);
    }
    .bk3-card__bold{
  font-weight: 700;
}

.bk3-card__btn--static{
  cursor: default;
  pointer-events: none;
  filter: none;
  box-shadow: none;
  background: #e5e7eb;   /* neutral grau */
  color: #374151;
}



    @media (max-width: 1060px){
      .bk-pricing3__cards{ width: min(920px, 100%); }
    }

    @media (max-width: 980px){
      .bk-pricing3__hero{ padding: 38px 14px 170px; }
      .bk-pricing3__cards{ margin-top: -110px; width: min(560px, 100%); padding: 0; }
      .bk-pricing3__grid{ grid-template-columns: 1fr; gap: 14px; }
    }

    @media (prefers-reduced-motion: reduce){
      .bk3-card, .bk3-card__btn, .bk-pricing3__tab{ transition:none; }
      .bk3-card:hover{ transform:none; }
      .bk-pricing3__tab:hover{ transform:none; }
    }

    /* 2) CSS: in dein bestehendes .bk-pricing3 <style> ergänzen */

.bk3-volume{
  margin-top: 18px;
}

.bk3-volume__inner{
  display:flex;
  gap: 14px;
  align-items: center;
  justify-content: space-between;
  background: #ffffff;
  border: 1px solid rgba(2,8,23,.06);
  border-radius: 2px;
  padding: 14px 14px;
  box-shadow: 0 12px 34px rgba(2,8,23,.10);
}

.bk3-volume__left{
  min-width: 260px;
}

.bk3-volume__badge{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 6px 10px;
  border-radius: 2px;
  font-size: 12px;
  font-weight: 900;
  color: #1d4ed8;
  background: rgba(37,99,235,.10);
}

.bk3-volume__title{
  margin-top: 8px;
  font-weight: 900;
  letter-spacing: -0.01em;
  color: #0f172a;
  font-size: 14px;
}

.bk3-volume__sub{
  margin-top: 4px;
  color: #6b7280;
  font-size: 12.5px;
  line-height: 1.45;
  max-width: 52ch;
}

.bk3-volume__tiers{
  display:flex;
  gap: 10px;
  align-items: stretch;
  flex: 1;
  justify-content: center;
}

.bk3-tier{
  border-radius: 2px;
  border: 1px solid rgba(37,99,235,.18);
  background: linear-gradient(180deg, rgba(37,99,235,.10), rgba(255,255,255,1) 65%);
  padding: 10px 12px;
  min-width: 98px;
  text-align:center;
}

.bk3-tier__kpi{
  font-weight: 950;
  font-size: 16px;
  letter-spacing: -0.01em;
  color:#0f172a;
}

.bk3-tier__label{
  margin-top: 2px;
  font-size: 11.5px;
  color:#6b7280;
  font-weight: 700;
}

.bk3-tier__off{
  margin-top: 6px;
  display:inline-block;
  font-size: 12px;
  font-weight: 900;
  color:#1d4ed8;
  background: rgba(37,99,235,.10);
  padding: 4px 8px;
  border-radius: 2px;
}

.bk3-volume__cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  white-space: nowrap;
  padding: 10px 12px;
  border-radius: 2px;
  font-weight: 900;
  font-size: 13px;
  color:#ffffff;
  background:#1d4ed8;
  box-shadow: 0 10px 22px rgba(29,78,216,.20);
  transition: transform .12s ease, filter .18s ease;
}

.bk3-volume__cta:hover{
  transform: translateY(-1px);
  filter: brightness(1.05);
}

/* Responsive */
@media (max-width: 980px){
  .bk3-volume__inner{
    flex-direction: column;
    align-items: stretch;
  }
  .bk3-volume__left{
    min-width: 0;
  }
  .bk3-volume__tiers{
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 4px;
  }
  .bk3-volume__cta{
    width: 100%;
  }
}



.why-choose {
  --why-accent: #000fff;
  --why-bg: #ececec;
  --why-card: #d9dadc;
  --why-border: #b5b7bc;
  --why-text: #101418;
  --why-muted: #324155;
  background: var(--why-bg);
  padding: 82px 48px;
  color: var(--why-text);
}

.why-head {
  width: min(1660px, 100%);
  margin: 0 auto 34px;
}

.why-badge {
  margin: 0 0 18px;
  text-transform: uppercase;
  letter-spacing: 0.17em;
  font-size: 13px;
  color: #4b5a6d;
}

.why-title {
  margin: 0;
  font-size: clamp(34px, 3.2vw, 50px);
  line-height: 1.1;
  font-weight: 400;
}

.why-title span {
  color: var(--why-accent);
}

.why-grid {
  width: min(1660px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.why-card {
  min-height: 350px;
  background: var(--why-card);
  padding: 24px 22px 20px;
  clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 30px, 100% 100%, 0 100%);
  display: flex;
  flex-direction: column;
}

.why-card-icon {
  width: 58px;
  height: 58px;
  background: var(--why-accent);
  clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 0 100%);
  display: grid;
  place-items: center;
  color: #fff;
}

.why-card-icon svg {
  width: 28px;
  height: 28px;
}

.why-card h3 {
  margin: 20px 0 0;
  font-size: clamp(24px, 1.55vw, 32px);
  line-height: 1.15;
  font-weight: 500;
  max-width: 18ch;
}

.why-card p {
  margin: auto 0 0;
  padding-top: 18px;
  color: var(--why-muted);
  font-size: 15px;
  line-height: 1.62;
  max-width: 38ch;
  position: relative;
}

.why-card p::before {
  content: "";
  position: absolute;
  left: 0;
  right: 12px;
  top: 0;
  border-top: 1px solid var(--why-border);
}

.why-card p::after {
  content: "";
  position: absolute;
  right: -6px;
  top: 13px;
  width: 22px;
  border-top: 1px solid var(--why-border);
  transform-origin: right center;
  transform: rotate(35deg);
}

.why-actions {
  width: min(1660px, 100%);
  margin: 26px auto 0;
}

.why-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  background: var(--why-accent);
  color: #fff;
  border: 1px solid var(--why-accent);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.01em;
  padding: 12px 18px;
  clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 0 100%);
}

.why-btn:hover {
  filter: brightness(1.05);
}

@media (max-width: 1160px) {
  .why-choose {
    padding: 70px 24px;
  }

  .why-grid {
    grid-template-columns: 1fr 1fr;
  }

  .why-card {
    min-height: 320px;
  }
}

@media (max-width: 760px) {
  .why-choose {
    padding: 58px 14px;
  }

  .why-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .why-card {
    min-height: 280px;
    padding: 22px 20px 20px;
  }

  .why-card-icon {
    width: 52px;
    height: 52px;
  }

  .why-card h3 {
    margin-top: 16px;
    font-size: 24px;
  }

  .why-card p {
    font-size: 15px;
    padding-top: 18px;
  }
}

.testimonials-section {
  padding: 120px 80px;
  background: #0f0f0f;
  color: #fff;
  text-align: center;
  font-family: HelveticaNowDisplay, "Helvetica Now Display", Helvetica, Arial, sans-serif;
}

.testimonials-title {
  font-size: 52px;
  font-weight: 600;
  margin-bottom: 20px;
}

.testimonials-title span {
  color: #00ff38;
}

.testimonials-sub {
  color: #ccc;
  font-size: 18px;
  margin-bottom: 60px;
}

/* Slider Container */
.testimonials-slider {
  overflow: hidden;
  width: 100%;
}

/* Track (laufende Linie) */
.testimonials-track {
  display: flex;
  gap: 40px;
  animation: slide 22s linear infinite;
}

/* Card */
.testimonial-card {
  background: #fff;
  color: #000;
  border-radius: 2px;
  padding: 36px;
  width: 380px;
  flex-shrink: 0;
  box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

/* Header */
.t-header {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 20px;
}

.t-header img {
  width: 54px;
  height: 54px;
  border-radius: 2px;
  object-fit: cover;
}

.t-header h3 {
  margin: 0;
  font-size: 20px;
  font-weight: 600;
}

.t-header p {
  margin: 0;
  color: #666;
  font-size: 14px;
}

/* Text */
.t-text {
  line-height: 1.6;
  font-size: 16px;
  color: #444;
}

/* Animation */
@keyframes slide {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* Mobile */
@media (max-width: 768px) {
  .testimonials-title { font-size: 34px; }
  .testimonial-card { width: 300px; padding: 28px; }
}


:root{
  --accent: #d8ff75;         /* Badge/Fokusfarbe (kannst du auf #0000ff ändern) */
  --ink: #262626;            /* Text dunkel */
  --muted: #5b6168;          /* Fließtext */
}

/* Max-Width Wrapper (1800px) */
.wrap-1800{
  max-width: 1690px;
  margin: 0 auto;
  padding: 0 24px;           /* Innenabstand links/rechts */
}

/* Intro-Block über dem Grid */
.section-intro{
  background: #ffffff;       /* wie in deinen Screens */
  padding: 72px 0 32px;      /* oben etwas Luft, unten nah am Grid */
}

.intro-grid{
  display: grid;
  grid-template-columns: 1fr 1.2fr;  /* Titel links groß, Text rechts */
  align-items: end;
  gap:170px;
}

.intro-title{
  font-size: clamp(48px, 8vw, 77px); /* riesig, responsiv */
  line-height: .95;
  font-weight: 400;
  color: var(--ink);
  margin: 0;
}

.intro-kicker{
  display:inline-block;
  color:#000;
  letter-spacing:.08em;
  font-size: 13px;
  font-weight: 600;
  border-radius: 2px;
  margin-bottom: 14px;
}

.intro-text{
  color: var(--ink);
  opacity: .9;
  font-size: clamp(16px, 2.2vw, 20px);
  line-height: 1.6;
  margin: 0;
}

/* Responsive */
@media (max-width: 1024px){
  .intro-grid{
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .intro-title{ text-align:left; }
}

.review-header-section {
  background: #05080a;
  padding: 55px 128px 0px;
  color: #fff;
  font-family: HelveticaNowDisplay, "Helvetica Now Display", Helvetica, Arial, sans-serif;
}

.jpxCrN .es-carousel-layout-item, .jpxCrN .es-review-container {
    height: 100% !important;
    clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 30px, 100% 100%, 0 100%);
}

.review-header-container
 {
    max-width: 1675px;
    margin: 0 auto;
    text-align: center;
    position: relative;
}
.review-badge {
  display: inline-block;
  padding: 6px 16px;
  border-radius: 2px;
  border: 1px dashed #555;
  color: #aaa;
  font-size: 14px;
  margin-bottom: 30px;
}


.eapps-widget {
    position: relative;
    background-color: #ffffff;
}

/* Title */
.review-title {
  font-size: 56px;
  font-weight: 400;
  margin: 0;
  line-height: 1.2;
}
.elfsight-app-61cf67ac-bbf9-4c1e-bbdb-439a27aa0f14{
  background-color: #05080a;
}

.review-title span {
  color: #0000ff; /* dein Blau */
}
@media (max-width: 768px) {
  .review-header-section {
    padding: 60px 30px 0px;
  }

  .review-title {
    font-size: 34px;
  }
}

@media (max-width: 480px) {
  .review-title {
    font-size: 28px;
  }
}

:root{
  --accent: #ff8000;   /* Hover-Akzent außenrum (z.B. #0000ff) */
  --ink: #0b0c0e;
  --grid: #e6e8eb;     /* feine Grid-Linien zwischen Karten */
}

/* ===== Max-Width Wrapper ===== */
.wrap-1800{
  max-width: 1690px;
  margin:0 auto;
  padding:0 24px;
}

/* ===== Section ===== */
.proj-two{
  background:#ffffff;
  padding:48px 0 96px;
}

/* ===== 2er Grid ===== */
.proj-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:28px;
}
@media (max-width:1000px){
  .proj-grid{ grid-template-columns:1fr; }
}

/* ===== Card / Figure ===== */
.proj-card{ /* optional: feiner Grid-Look */
  border-right:1px solid var(--grid);
  border-bottom:1px solid var(--grid);
}
.proj-link{
  display:block;
  text-decoration:none;
  color:inherit;
}
.proj-figure{
  position:relative;
  margin:0;
  overflow:hidden;
  aspect-ratio:16/9;
  border-radius: 2px;
  isolation:isolate;
}

/* Hover-Akzent außerhalb (hinter dem Bild) */
.proj-figure::before{
  content:"";
  position:absolute;
  inset:-28px;
  background:var(--accent);
  border-radius: 2px;
  opacity:0;
  transform:scale(.96);
  transition:opacity .45s ease, transform .55s cubic-bezier(.55,0,.1,1);
  z-index:0; /* hinter dem Bild */
}

.proj-figure img{
  position:relative;
  z-index:1;
  width:100%; height:100%; object-fit:cover;
  border-radius: 2px; display:block;
  box-shadow:0 10px 24px rgba(0,0,0,.12);
  transition:transform .6s cubic-bezier(.25,.9,.3,1), filter .35s ease;
}

/* ===== Vertikales Standort-Label links ===== */
/* ACHTUNG: Klasse im HTML auf <figcaption> setzen: class="proj-cap proj-cap--vertical" */
.proj-cap{
  /* Baseline: falls mal normal genutzt wird */
  position:absolute;
  left:14px; bottom:14px;
  z-index:2;
  color:#fff;
  font-weight:600;
  font-size:20px;
  line-height:1;
  background:none;
  text-shadow:none;
}

:root{
  /* Farben kannst du easy tauschen */
  --stripe: #000;           /* Standardfarbe des Streifens */
  --stripe-hover: #e37200;  /* Farbe beim Hover */
  --stripe-text: #fff;      /* Textfarbe normal */
  --stripe-text-hover: #000;/* Textfarbe beim Hover */
}

/* vertikales Label – etwas schmaler + luftiger */
.proj-cap--vertical{
  position:absolute;
  left:0; top:0; bottom:0;
  width:44px;                      /* vorher 52px */
  background:var(--stripe);
  color:var(--stripe-text);
  display:flex; align-items:center; justify-content:center;
  writing-mode:vertical-rl; text-orientation:upright;
  font-size:35px; font-weight:300; letter-spacing:.08em;
  border-top-right-radius:3px; border-bottom-right-radius:3px;
  transition:background .25s ease, color .25s ease, transform .25s ease;
  box-shadow: 2px 0 10px rgba(0,0,0,.25);

}

/* Farbe ändern bei Hover/Focus (auch per Tastatur) */
.proj-figure:hover   .proj-cap--vertical,
.proj-figure:focus-within .proj-cap--vertical{
  background:var(--stripe-hover);
  color:var(--stripe-text-hover);
  transform:translateZ(0);   /* verhindert Flackern bei manchen GPUs */
  
}


/* Optional: „Fahne“ statt volle Höhe
.proj-cap--vertical.ribbon{
  top:auto; height:70%; bottom:0;
}
*/

/* ===== CTA oben rechts (optional) ===== */
.proj-cta{
  position:absolute;
  right:18px; top:16px;
  z-index:2;
  color:#fff;
  font-weight:400;
  background:rgba(0,0,0,.5);
  padding:8px 12px;
  border-radius: 2px;
  backdrop-filter:saturate(140%) blur(4px);
  opacity:0;
  transform:translateY(-6px);
  transition:opacity .3s ease, transform .3s ease;
}

/* ===== Hover-Effekte ===== */
.proj-figure:hover::before{ opacity:1; transform:scale(1); }
.proj-figure:hover img{ transform:scale(1.02); filter:saturate(1.05); }
.proj-figure:hover .proj-cta{ opacity:1; transform:translateY(0); }


/* Layout */
.values-section { background:#fff;  }

.values-grid.layout-bottom-left{
  display:grid;
  grid-template-columns: 1fr 480px;  /* rechte Spalte fix wie im Screenshot */
  align-items:stretch;
  gap:100px;
  padding:100px 0;                   /* Luft nach oben/unten */
  min-height:420px;                  /* sorgt für „oben rechts / unten links“-Look */
}

/* Linke Spalte: Text unten ausrichten */
.values-left{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;          /* unten */
  gap:28px;
}

/* Kicker/Headline/Button */
.values-kicker{
  margin:0 0 28px;
  font-size:14px;
  letter-spacing:2px;
  color:#808080;
}
.values-title{
  margin:0 0 36px;
  font-weight:700;
  line-height:1.1;
  font-size:clamp(38px,5vw,64px);
}
.values-title span{ color:#5a5a5a; font-weight:600; }

.values-cta{
  display:inline-block;
  background:#2f3e2f;
  color:#fff;
  padding:14px 36px;
  border-radius: 2px;
  text-decoration:none;
  transition:transform .2s ease, opacity .2s ease;
}
.values-cta:hover{ transform:translateY(-1px); opacity:.95; }

/* Rechte Spalte: Cards oben, Button darunter */
.values-right{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  margin-top:0;                      /* kein optischer Versatz */
}
.values-right .values-cta{
  align-self:flex-start;             /* Button links unter der Liste */
  margin-top:24px;
}

/* Topbar */
:root{--topbar-h:40px;--nav-h:72px}



.topbar{background:#0f1212;color:#fff;font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:12px;position:fixed;top:0;left:0;right:0;z-index:1000}
.topbar__inner{height:40px;display:flex;align-items:center;justify-content:center;gap:8px}
.topbar__link{opacity:.95}
.topbar__link:hover{opacity:1}
.topbar__arrow{opacity:.6}

/* Main nav */
.nav{background:#fff;border-bottom:1px solid var(--border);position:fixed;top:var(--topbar-h);left:0;right:0;z-index:999}
.nav__inner{height:72px;display:flex;align-items:center;gap:118px}
.nav__logo img{height:32px;width:auto;display:block} /* Replace src in HTML; size independent from header height */

.nav__menu{display:flex;gap:24px;margin-left:8px}
.nav__item{display:inline-flex;align-items:center;gap:8px;padding:10px 8px;border:0;background:transparent;font-weight:400;letter-spacing:.06em;text-transform:uppercase;font-size:13px;cursor:pointer}
.nav__item:hover{opacity:.75}
.nav__item:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.chev{transition:transform .2s ease}

/* Mega menu positioning */
.mega{top:calc(var(--topbar-h) + var(--nav-h))}

@media (max-width:840px){
  .mega{top:var(--topbar-h)}
}


/* Actions */
.nav__actions{margin-left:auto;display:flex;gap:14px;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 18px;border-radius: 2px;font-weight:400;letter-spacing:.06em;text-transform:uppercase;font-size:12px}
.btn--outline{border:1.5px solid #0f1111;background:#fff}
.btn--outline:hover{background:#f6f7f9}
.btn--primary{background:var(--blue);color:#fff}
.btn--primary:hover{filter:brightness(0.95)}
.btn--white{background:#fff;color:#0b0c0e;border:1px solid rgba(0,0,0,.1)}
.btn--white:hover{background:#f6f7f9}

/* Mobile toggle */
.burger{display:block;position:relative;width:40px;height:30px;background:transparent;cursor:pointer}
.burger input{display:none}
.burger span{display:block;position:absolute;height:4px;width:100%;background:#111;border-radius: 2px;opacity:1;left:0;transform:rotate(0deg);transition:.25s ease-in-out}
.burger span:nth-of-type(1){top:0;transform-origin:left center}
.burger span:nth-of-type(2){top:50%;transform:translateY(-50%);transform-origin:left center}
.burger span:nth-of-type(3){top:100%;transform:translateY(-100%);transform-origin:left center}
.burger input:checked~span:nth-of-type(1){transform:rotate(45deg);top:0;left:5px}
.burger input:checked~span:nth-of-type(2){width:0;opacity:0}
.burger input:checked~span:nth-of-type(3){transform:rotate(-45deg);top:28px;left:5px}

/* Mega menu container */
.mega{position:fixed;left:0;right:0;top:112px; /* 40 + 72 */
      z-index: 9999;background:#fff;border-top:50px solid #ffffff;border-bottom:50px solid var(--bg);
      box-shadow:0 20px 40px rgba(0,0,0,.06);display:none}
.mega.is-open{display:block}
.mega__inner{display:grid;grid-template-columns:280px 1fr 360px;gap:28px;padding:36px 20px}
.go-text { color: #0055ff;}



/* Categories (left) */
.mega__cats{border-right:1px solid var(--border);padding-right:20px;display:flex;flex-direction:column;gap:10px}
.mega-cat{display:flex;align-items:center;justify-content:space-between;font-size:1rem; gap:12px;padding:10px 14px;border:1px solid var(--blue);background:#fff;color:var(--blue);font-weight:400;font-family: HelveticaNowDisplay, "Helvetica Now Display", Helvetica, Arial, sans-serif;}
.mega-cat:not(.is-active){border-color:#d7dcff;color:#234;opacity:.9}
.mega-cat:hover{background:#f6f9ff}
.mega-cat.is-active{box-shadow:inset 0 0 0 1px var(--blue)}
.mega-cat .chev{transform:rotate(90deg)}

/* Content (middle) */
.mega__content{padding-right:12px}
.mega__title{margin:0 0 18px 0;font-size:22px;font-weight:700}
.mega-item{display:flex;gap:14px;align-items:center;padding:10px 8px;border-radius: 2px;height:56px;object-fit:cover;border:1px solid var(--border);border-radius: 2px;background:#eee}
.mega-item__name{font-weight:700}
.mega-item__desc{color:#3b3f46}
.mega-more{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-weight:700;
  text-transform:uppercase;
  font-size:12px;
  color:var(--blue);
  margin-top:10px;
  letter-spacing: 1px;
}
.mega-more:hover{
  opacity:.8;
}
.mega-more .arrow{
  transition:transform .2s ease;
}
.mega-more:hover .arrow{
  transform:translateX(3px);
}

.mega { display: none; position: absolute; left: 0; right: 0; top: 100%; z-index: 9999; }
.mega.is-open { display: block; }



/* Rotator: wechselt alle ~3s */
.topbar__rotator{
  position:relative; display:inline-block; height:1em; overflow:hidden; width:13.8ch;
}
.topbar__rotator span{
  position:absolute; left:0; right:0;
  opacity:0; transform:translateY(100%);
  animation:topbarRotate 9s infinite;
  white-space:nowrap;
}
.topbar__rotator span:nth-child(1){ animation-delay:0s }
.topbar__rotator span:nth-child(2){ animation-delay:3s }
.topbar__rotator span:nth-child(3){ animation-delay:6s }

@keyframes topbarRotate{
  0%{opacity:0; transform:translateY(100%)}
  5%{opacity:1; transform:translateY(0)}
  30%{opacity:1; transform:translateY(0)}
  35%{opacity:0; transform:translateY(-100%)}
  100%{opacity:0; transform:translateY(-100%)}
}
.tp-section{padding:60px 20px;background:#fff}
.tp-container{
  max-width:1200px;margin:0 auto;
  display:grid;grid-template-columns:280px 1fr;gap:30px;align-items:start;
}

/* Linke Spalte */
.tp-summary{padding-top: 10px;}
.tp-summary-title{font-size:28px;font-weight:700;margin-bottom:8px}
.tp-stars{color:#0000ff;font-size:20px;margin-bottom:6px;letter-spacing:2px}
.tp-based{font-size:14px}.tp-based a{color:inherit;text-decoration:underline}
.tp-brand{margin-top:10px;font-weight:700}

/* Rechte Spalte */
.tp-viewport{position:relative;overflow:hidden}
.tp-slider{
  display:flex;gap:24px;overflow-x:auto;padding:14px 0;
  scroll-behavior:smooth;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
}
.tp-slider::-webkit-scrollbar{display:none}
/* Basis */
.topbar {
  background: #0b0d12;
  color: #e7eaf0;
  font-size: 14px;
}
.topbar__inner {
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  padding: 10px 0;
}

/* Fades an den Rändern */
.topbar__fade {
  position: absolute;
  top: 0; bottom: 0;
  width: 48px;
  pointer-events: none;
  z-index: 2;
}
.topbar__fade--left  { left: 0;  background: linear-gradient(to right, #0b0d12, rgba(11,13,18,0)); }
.topbar__fade--right { right: 0; background: linear-gradient(to left,  #0b0d12, rgba(11,13,18,0)); }

/* Track: max-content + variable Dauer für konstante Geschwindigkeit */
.topbar__track {
  display: flex;
  gap: 36px;
  white-space: nowrap;
  width: max-content;                /* wichtig für nahtlosen Loop */
  will-change: transform;
  animation: tickerMove var(--dur, 30s) linear infinite; /* Dauer kommt per JS */
}

.topbar__item {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  opacity: .95;
  font-weight: 400;
}
.topbar__icon {
  width: 18px; height: 18px; flex: 0 0 18px;
  opacity: .9;
}

/* Hover/Fokus: pausieren (optional) */
.topbar__inner:hover .topbar__track,
.topbar__inner:focus-within .topbar__track { animation-play-state: paused; }

/* Farben/Details */
.topbar__item { color: #e7eaf0; }
.topbar__item strong { color: #ffffff; }

/* Animation: exakt halbe Track-Breite, wenn Inhalt doppelt vorhanden ist */
@keyframes tickerMove {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .topbar__track { animation: none; }
}

/* Responsive */
@media (max-width: 600px){
  .topbar__inner { padding: 8px 0; }
  .topbar__track { gap: 28px; }
  .topbar__icon  { width: 16px; height: 16px; }
}

/* Karten */
.tp-card{
  scroll-snap-align:start;flex:0 0 auto;
  min-width:340px;max-width:360px;background:#fff;border:1px solid #eee;border-radius: 2px;
  padding:18px;box-shadow:0 4px 12px rgba(0,0,0,.08);
}
.tp-card-stars{color:#0000ff;font-weight:600;margin-bottom:8px}
.tp-verified{font-size:12px;color:#666;margin-left:6px}
.tp-card-title{font-size:15px;font-weight:700;margin-bottom:6px}
.tp-card-text{font-size:14px;color:#333;margin-bottom:8px}
.tp-card-meta{font-size:12px;color:#666}

/* Fade-Out an den Containerkanten */
.tp-fade{
  position:absolute;top:0;bottom:0;width:56px;pointer-events:none;z-index:2;opacity:1;transition:opacity .2s;
}
.tp-fade--left{left:0;background:linear-gradient(to right,#fff,rgba(255,255,255,0))}
.tp-fade--right{right:0;background:linear-gradient(to left,#fff,rgba(255,255,255,0))}

/* Minimalistische Pfeile UNTER dem Kasten */
.tp-arrows{
  display:flex;justify-content:center;gap:30px;margin-top:12px;
}
.tp-arrow{
  background:none;border:none;cursor:pointer;font-size:28px;line-height:1;
  color:#333;transition:color .2s;
}
.tp-arrow:hover{color:#0000ff}
.tp-arrow:disabled{color:#ccc;cursor:default}

/* Responsive */
@media (max-width:900px){
  .tp-container{grid-template-columns:1fr}
  .tp-card{min-width:85vw;max-width:85vw}
}
.tp-brand-link {
  display: inline-block;
  margin-top: 8px;
  font-weight: 700;
  text-decoration: none;
  color: #0000ff; /* Trustpilot-Grün */
  transition: color 0.2s;
}
.tp-brand-link:hover {
  color: #000fff;
  text-decoration: underline;
}
/* nur für Cards mit tp-card-text--collapsible */
.tp-card-text--collapsible{
  display: -webkit-box;
  -webkit-line-clamp: 5;   
  -webkit-box-orient: vertical;
  overflow: hidden;
  position: relative;
}

/* Fade unten */
.tp-card-text--collapsible::after{
  content: "";
  position: absolute; left:0; right:0; bottom:0; height:2.2em;
  background: linear-gradient(to bottom, rgba(255,255,255,0), #fff 70%);
}

/* expandiert */
.tp-card-text--collapsible.is-expanded{
  -webkit-line-clamp: unset;
  display: block;
}
.tp-card-text--collapsible.is-expanded::after{display:none}

/* Button */
.tp-more{
  background:none; border:none; cursor:pointer;
  color:#0000ff; font-weight:600; padding:0; margin-top:6px;
}
.tp-more:hover{ text-decoration:underline; }


/* Right column (blue card) */
.mega__cta{display:flex;align-items:flex-start;justify-content:flex-end}
.cta-card{position:relative;background:var(--blue);color:#fff;border-radius: 2px;padding:24px;min-height:260px;width:100%;overflow:hidden}
.cta-card__avatars{display:flex;gap:8px;margin-bottom:18px}
.cta-card__avatars img{width:44px;height:44px;border-radius: 2px;display:block}
.cta-card__title{margin:0 0 10px 0;font-size:20px}
.cta-card__text{margin:0 0 18px 0;line-height:1.5;color:#f2f3ff}
.cta-card__lines{position:absolute;right:0;top:0;width:200px;height:140px;opacity:.9}

/* Tabs visibility */
.mega-tab{animation:fade .15s ease}
.mega-tab[hidden]{display:none}
.is-active.mega-tab{display:block}
@keyframes fade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}

/* Hover chevron rotate when open */
.nav__item[aria-expanded="true"] .chev{transform:rotate(180deg)}

/* Responsive */
@media (max-width: 1024px){
  .mega__inner{grid-template-columns:1fr;gap:20px}
  .mega__cats{border:0;padding:0;flex-direction:row;flex-wrap:wrap}
  .mega-cat{flex:1 1 auto}
  .mega__cta{order:3}
}

@media (max-width: 840px){
  .nav__menu{display:none}
  .nav__toggle{display:inline-block}
  .nav__actions{display:none}
  .mega{top:40px} /* attach under topbar on mobile */
}


/* ===== Lösungen Mega Menu (CSS) – kompakte Schreibweise ===== */
:root{--blue:#0000ff}
.mega#mega-solutions .mega__inner{display:grid;grid-template-columns:1fr 1.1fr;gap:28px}
.solutions__left .mega__title,.solutions__right .mega__title{margin:0 0 14px 0}
.solutions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.sol-card{position:relative;display:flex;flex-direction:column;gap:10px;padding:18px;background:#eef1f5;border:1px solid #e6e8eb;clip-path:polygon(0 0,calc(100% - 28px) 0,100% 28px,100% 100%,0 100%)}
.sol-card:hover{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}
.sol-icon{color:var(--blue);display:inline-flex}
.sol-title{font-weight:400;color:#0b0c0e}
.sol-wide{margin-top:16px;display:flex;align-items:center;gap:14px;padding:16px;border:1px solid #e6e8eb;border-radius: 2px;background:#fff}
.sol-wide:hover{border-color:#cfd3d8}
.sol-wide__icon{color:var(--blue);display:inline-flex}
.sol-wide__title{font-weight:600}
.sol-wide__more{margin-left:auto;display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.story-track {
  display: flex;
  transition: transform 0.4s ease;
}

.story-card {
  min-width: 100%;
  flex-shrink: 0;
}

.solutions__right {
  overflow: hidden;
}

.solutions__right{display:flex;flex-direction:column;gap:12px}
.story-card{position:relative;display:block;border-radius: 2px;overflow:hidden;clip-path:polygon(0 0,calc(100% - 36px) 0,100% 36px,100% 100%,0 100%)}
.story-card img{width:100%;height:280px;object-fit:cover;display:block}
.story-overlay{position:absolute;left:0;right:0;bottom:0;padding:18px 20px;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.55) 60%,rgba(0,0,0,.75) 100%);color:#fff}
.story-overlay h4{margin:0 0 6px 0;font-size:22px}
.story-overlay p{margin:0;opacity:.9}
.story-controls{display:flex;gap:10px}
.story-btn{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #b9bec7;background:#fff;border-radius: 2px;
    transform: translateY(15px);
  }
 



/* Standardzustand: unsichtbar */
.sol-card {
  opacity: 0;
  transform: translateY(15px);
}

/* Animation, wenn die Klasse "animate" gesetzt ist */
.sol-card.animate {
  animation: solFadeUp 0.6s ease forwards;
}

/* Verzögerung für jede Karte */
.sol-card.animate:nth-child(1) { animation-delay: 0.1s; }
.sol-card.animate:nth-child(2) { animation-delay: 0.2s; }
.sol-card.animate:nth-child(3) { animation-delay: 0.3s; }
.sol-card.animate:nth-child(4) { animation-delay: 0.4s; }
.sol-card.animate:nth-child(5) { animation-delay: 0.5s; }
.sol-card.animate:nth-child(6) { animation-delay: 0.6s; }

:root{--blue:#0000ff;--border:#e6e8eb;--muted:#6a6f78}
.mega#mega-hosting .mega__inner{display:grid;grid-template-columns:280px 1fr;gap:28px}

/* Left list */
.res-list{display:flex;flex-direction:column;gap:12px}
.res-item{display:flex;align-items:center;gap:12px;height:56px;padding:0 16px;border:1px solid var(--border);background:#f4f6f8;user-select:none}
.res-item .res-icon{display:inline-flex;color:#6f7580}
.res-item .res-title{font-weight:400;letter-spacing:.01em;color:#0b0d11}
.res-item .res-caret{margin-left:auto;opacity:.75;transition:transform .2s ease}
.res-item:hover{border-color:#cfd6de;background:#f8fbff}
.res-item.is-active{background:#fff;box-shadow:inset 0 0 0 2px var(--blue)}
.res-item.is-active .res-icon{color:var(--blue)}
.res-item.is-active .res-caret{transform:rotate(180deg)}
.res-item:focus-visible{outline:2px solid var(--blue);outline-offset:2px}


.res-content.hidden{display:none}
.posts-head{display:flex;align-items:center;    gap: 642px;}
.posts-head .mega__title{margin:0}
.btn.small{height:34px;padding:0 12px;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.btn.btn--outline{border:1.5px solid #0f1111;background:#fff}


.posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:8px}
.post-card{display:block;color:inherit}
.post-media{position:relative;margin:0;clip-path:polygon(0 0,calc(100% - 36px) 0,100% 36px,100% 100%,0 100%);border:1px solid var(--border);border-radius: 2px;overflow:hidden}
.post-media img{width:100%;height:220px;object-fit:cover;display:block}
.post-tag{position:absolute;left:12px;top:12px;background:#fff;padding:6px 10px;border-radius: 2px;border:1px solid var(--border);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.post-meta{margin:10px 0 4px 0;color:var(--muted);font-size:12px}
.post-title{margin:0 0 10px 0;line-height:1.25}
.post-author{display:flex;align-items:center;gap:8px;color:#0b0c0e}
.author-ava{width:22px;height:22px;border-radius: 2px;object-fit:cover}

.post-card{opacity:0;transform:translateY(14px);transition:opacity .45s ease,transform .45s ease}
.post-card.revealed{opacity:1;transform:none}


.post-card:hover .post-media{box-shadow:0 10px 24px rgba(0,0,0,.10)}
.post-media img{transition:transform .5s ease}
.post-card:hover .post-media img{transform:scale(1.06)}

.warranty-brands .res-card {
  text-align: center;
  padding: 20px;
  border: 1px solid var(--border);
  border-radius: 2px;
  background: #fff;
  transition: transform .2s, box-shadow .2s;
}
.warranty-brands .res-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 6px 16px rgba(0,0,0,0.08);
}
.res-logo {
  max-height: 71px;
}

.res-logo h4{
  padding-top:1rem ;
}

.res-logoBT {
  max-height: 60px;
  margin-bottom: 12px;
}
.res-logoBD {
  max-height: 60px;
  margin-bottom: 12px;
}

.res-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:8px}
.res-card{background:#fff;border:1px solid var(--border);padding:14px}
.res-card h4{margin:0 0 6px 0;font-size:16px}


.calc-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:720px}
.calc-form label{display:flex;flex-direction:column;gap:6px;font-size:14px}
.calc-form input{height:38px;padding:0 10px;border:1px solid var(--border);border-radius: 2px;margin-top:4px}
.calc-out{margin-top:16px;max-width:720px;border:1px solid var(--border);border-radius: 2px;padding:14px;background:#fff}
.calc-out .row{display:flex;justify-content:space-between;padding:8px 4px;border-bottom:1px dashed #e9ecef}
.calc-out .row:last-child{border-bottom:0}

@media(max-width:1100px){.posts-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){
  .mega#mega-hosting .mega__inner{grid-template-columns:1fr}
  .posts-grid{grid-template-columns:1fr}
  .calc-form{grid-template-columns:1fr}
}


.calc-lead{ margin:6px 0 14px; color:#6a6f78; max-width:60ch }
.calc-cta{ display:flex; align-items:center; gap:14px; flex-wrap:wrap }
.calc-note{ margin:0; font-size:12px; color:#8a90a0 }

.calc-cta__btn{ position:relative; overflow:hidden }
.calc-cta__btn::after{
  content:""; position:absolute; inset:-2px; width:130%;
  background:linear-gradient(100deg, transparent, rgba(255,255,255,.55), transparent);
  transform:translateX(-120%); animation: calcShine 6s ease-in-out infinite;
}
@keyframes calcShine{ 0%,70%{transform:translateX(-120%)} 90%{transform:translateX(10%)} 100%{transform:translateX(120%)} }

.calc-cta__arrow{ display:inline-block; transition:transform .25s ease; margin-left:.35em }
.calc-cta__btn:hover .calc-cta__arrow{ transform:translateX(3px) }
.nav-item {
  position: relative;
  list-style: none;
}

.dropdown-menu {
  position: absolute;
  top: 100%; 
  left: 0;
  background: #0000ff;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  list-style: none;
  padding: 8px 0;
  margin: 0;
  min-width: 180px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(5px);
  transition: all 0.2s ease;
  z-index: 99999; 
}

.dropdown-menu li {
  padding: 0;
}

.dropdown-menu li a {
  display: block;
  padding: 10px 16px;
  color: #ffffff;
  text-decoration: none;
  font-size: 14px;
  transition: background 0.2s ease;
}

.dropdown-menu li a:hover {
  background: #0f1212;
}

/* Dropdown beim Hover anzeigen */
.nav-item:hover .dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}



/* ===== Blue Key-Facts Band (1:1 Anmutung) ===== */
.bk-band{
  --blue:#0b3ea8;            /* Grundton */
  --blue2:#0000ff;           /* dunkler Verlauf */
  --ink:#e8f0ff;             /* Text */
  --muted:#bfcceb;           /* Sub- & Smalltext */
padding: 100px 20px;
  position:relative; isolation:isolate; overflow:hidden;
  background: linear-gradient(180deg, var(--blue) 0%, var(--blue2) 100%);
  color:var(--ink);
}

/* Hintergrund-Doodle */
.bk-band__bg{ position:absolute; inset:0; z-index:0; pointer-events:none; }
.bk-band__svg{ position:absolute; inset:0; width:100%; height:100%; opacity:.35 }
.bk-band__path,
.bk-band__arrow{ stroke:rgb(255, 255, 255); stroke-width:2; stroke-linecap:round; stroke-linejoin:round;
  stroke-dasharray: 1000; stroke-dashoffset: 1000; }

/* Headline-Bereich */
.bk-band__inner{ position:relative; z-index:1; }
.bk-band__head{ max-width:820px; }
.bk-band__title{ margin:0 0 6px; font-weight:400; line-height:1.1; font-size: clamp(28px, 4.6vw, 46px); }
.bk-band__sub{ margin:0 0 18px; color:var(--muted); max-width: 70ch; }

/* Divider wie im Screenshot */
.bk-band__rule{
  border: 0;
    border-top: 3px solid rgba(255, 255, 255, .22);
    margin: 14px 0 18px;
    width: 1020px;
}

/* Row mit 3 Spalten */
.bk-band__row{
  display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 24px;
}
@media (max-width: 900px){ .bk-band__row{ grid-template-columns:1fr; } }
@media (max-width: 900px){ .bk-band__svg{ display: none; } }
.bk-metric{ opacity:0; transform:translateY(8px); transition:opacity .5s ease, transform .5s ease; }
.bk-metric.is-in{ opacity:1; transform:none; }

.bk-metric__top{
  display:flex; align-items:baseline; gap:10px; margin-bottom:6px;
}
.bk-metric .count{
  font-variant-numeric: tabular-nums;
  font-size: 25px;
  font-weight:500; letter-spacing:.02em; color:#fff;
}
.bk-metric small{
  color:var(--muted); font-weight:700; text-transform:uppercase; letter-spacing:.08em; font-size:12px;
}
.bk-metric__txt{ margin:0; color:var(--muted); }

/* Zeichnen, sobald die Section sichtbar ist */
.bk-band.draw .bk-band__path,
.bk-band.draw .bk-band__arrow{ animation: kfStroke 1.8s ease forwards; }
@keyframes kfStroke{ to{ stroke-dashoffset:0; } }

/* Reveal Stagger */
[data-kf-reveal]{ opacity:0; transform:translateY(8px); }
.is-in{ opacity:1 !important; transform:none !important; }


.why-bitkastl {
  --wb-accent: #000fff;
  --wb-bg: #ececec;
  --wb-panel: #dfe1e4;
  --wb-line: #d2d5da;
  --wb-text: #121620;
  --wb-muted: #394a60;
  background: var(--wb-bg);
  padding: 70px 0 80px;
  overflow: hidden;
}

.wb-wrap {
  width: min(1650px, calc(100% - 32px));
  margin: 0 auto;
}

.wb-top {
  max-width: 980px;
  margin-bottom: 34px;
}

.wb-label {
  display: block;
  margin: 0 0 8px;
  color: #5a6d84;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-weight: 600;
}

.wb-top h2 {
  margin: 0;
  font-size: clamp(34px, 3vw, 50px);
  line-height: 1.04;
  letter-spacing: -0.01em;
  font-weight: 400;
  color: var(--wb-text);
  max-width: 30ch;
}

.wb-top p {
  margin: 20px 0 0;
  font-size: 18px;
  line-height: 1.45;
  color: var(--wb-muted);
  max-width: 46ch;
}

.wb-carousel {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(500px, 600px);
  gap: 20px;
  margin-top: 66px;
  margin-bottom: 26px;
  width: calc(100vw - max((100vw - 1650px) / 2, 16px));
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.wb-carousel::-webkit-scrollbar {
  display: none;
}

.wb-card {
  scroll-snap-align: start;
}

.wb-card-media {
  background: linear-gradient(130deg, #f2f2f3, #d8d9dc);
  /* border: 1px solid var(--wb-line); */
  clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 30px, 100% 100%, 0 100%);
  min-height: 520px;
  overflow: hidden;
}

.wb-card-media img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  display: block;
  transition: transform 0.35s ease;
  transform-origin: center center;
}

.wb-card:hover .wb-card-media img {
  transform: scale(1.08);
}

.wb-card-index {
  display: inline-block;
  margin-top: 10px;
  color: #6f8298;
  font-size: 12px;
  letter-spacing: 0.08em;
  font-weight: 700;
}

.wb-card h3 {
  margin: 6px 0 6px;
  font-size: 36px;
  line-height: 1.08;
  font-weight: 500;
  color: #1c2f48;
}

.wb-card p {
  margin: 0;
  color: #3e4f64;
  font-size: 14px;
  line-height: 1.45;
}

.wb-card-more {
  margin-top: 10px;
}

.wb-card-more summary {
  list-style: none;
  cursor: pointer;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #1f2e41;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.wb-card-more summary::marker {
  content: "";
}

.wb-card-more summary::-webkit-details-marker {
  display: none;
}

.wb-card-more summary::after {
  content: "";
  display: inline-grid;
  place-items: center;
  width: 18px;
  height: 18px;
  border: 1px solid #8e99a8;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M7 10l5 5 5-5' stroke='%235a6676' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center 52%;
  background-size: 12px 12px;
  transition: background-position 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}

.wb-card-more[open] summary::after {
  border-color: #657284;
  background-color: rgba(101, 114, 132, 0.08);
  background-position: center 42%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M7 14l5-5 5 5' stroke='%235a6676' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.wb-card-more > p {
  margin-top: 10px;
  font-size: 14px;
  line-height: 1.6;
  color: #32485f;
}

.wb-controls {
  margin-top: 18px;
  display: flex;
  gap: 10px;
}

.wb-control {
  width: 48px;
  height: 48px;
  border: 1px solid #aeb4bd;
  background: transparent;
  color: #5a6471;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}

.wb-control:hover {
  border-color: #8793a3;
  color: #000fff;
}

.wb-btn {
  display: none;
}

@media (max-width: 1180px) {
  .why-bitkastl {
    padding: 58px 0 64px;
  }

  .wb-wrap {
    width: min(1650px, calc(100% - 24px));
  }

  .wb-top {
    max-width: 100%;
    margin-bottom: 24px;
  }

  .wb-top h2 {
    font-size: clamp(32px, 5vw, 44px);
    max-width: 20ch;
  }

  .wb-top p {
    font-size: 17px;
    max-width: 42ch;
  }

  .wb-carousel {
    width: calc(100vw - max((100vw - 1650px) / 2, 12px));
    grid-auto-columns: minmax(340px, 82vw);
    gap: 16px;
    margin-top: 34px;
    margin-bottom: 22px;
    scroll-snap-type: x proximity;
  }

  .wb-card-media {
    min-height: 420px;
  }

  .wb-card h3 {
    font-size: 30px;
  }

  .wb-card p {
    font-size: 14px;
  }
}

@media (max-width: 760px) {
  .why-bitkastl {
    padding: 42px 0 48px;
  }

  .wb-wrap {
    width: calc(100% - 32px);
  }

  .wb-label {
    font-size: 10px;
    margin-bottom: 6px;
  }

  .wb-top h2 {
    font-size: clamp(30px, 9vw, 40px);
    line-height: 1.08;
    max-width: 14ch;
  }

  .wb-top p {
    margin-top: 14px;
    font-size: 16px;
    line-height: 1.5;
    max-width: 34ch;
  }

  .wb-carousel {
    width: calc(100vw - max((100vw - 1650px) / 2, 10px));
    grid-auto-columns: 86vw;
    gap: 12px;
    margin-top: 24px;
    margin-bottom: 16px;
  }

  .wb-card-media {
    height: 220px;
    min-height: 220px;
  }

  .wb-card-media img {
    min-height: 0;
    height: 100%;
    object-fit: cover;
    padding: 0;
  }

  .wb-card h3 {
    font-size: 21px;
    line-height: 1.2;
  }

  .wb-card p {
    font-size: 14px;
    line-height: 1.5;
  }

  .wb-card-more summary {
    font-size: 10px;
    letter-spacing: 0.12em;
  }

  .wb-card-more summary::after {
    width: 16px;
    height: 16px;
    background-size: 10px 10px;
  }

  .wb-control {
    width: 40px;
    height: 40px;
    font-size: 22px;
  }
}

@media (max-width: 520px) {
  .wb-top h2 {
    font-size: clamp(28px, 10vw, 36px);
    max-width: 16ch;
  }

  .wb-top p {
    font-size: 15px;
    max-width: 30ch;
  }

  .wb-carousel {
    grid-auto-columns: 90vw;
    gap: 10px;
  }

  .wb-card-media {
    height: 318px;
    min-height: 190px;
  }

  .wb-card-media img {
    padding: 0;
  }

  .wb-controls {
    gap: 8px;
  }

  .wb-control {
    width: 36px;
    height: 36px;
    font-size: 20px;
  }
}

@media (hover: none) and (pointer: coarse) {
  .wb-card:hover .wb-card-media img {
    transform: none;
  }
}
.faq-wrapper {
  background: #f3f3f3;
  padding: 80px 0;
}

.faq-container {
  max-width: 1720px;
  margin: 0 auto;
  display: flex;
  gap: 280px;
  padding: 0 40px;
}

.faq-left {
  width: 35%;
}

.faq-left h2 {
  margin-bottom: 10px;
  font-weight: 600;
  position: sticky;
  top: 7rem;
}
.faq-left p {
  margin-bottom: 10px;
  font-weight: 500;
  position: sticky;
  top: 10rem;
}

.faq-contact-box
 {
    background: #000fff;
    color: #fff;
    padding: 35px;
    margin-top: 20px;
    border-radius: 2px;
    position: sticky;
    top: 13rem;
    overflow: hidden;
    clip-path: polygon(0 0, calc(100% - 28px) 0, 100% 28px, 100% 100%, 0 100%);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
}

.faq-contact-box::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 28px;
  height: 28px;
  background: rgba(255,255,255,.20);
  clip-path: polygon(0 0, 100% 100%, 100% 0);
  pointer-events: none;
}

.faq-contact-box h3,
.faq-contact-box p {
  position: static !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #ffffff;
  font-family: HelveticaNowDisplay, "Helvetica Now Display", Helvetica, Arial, sans-serif;
  line-height: 1.35;
  transform: none !important;
}

.faq-contact-box h3 {
  font-size: 18px;
  font-weight: 600;
  letter-spacing: -0.01em;
}

.faq-contact-box p {
  font-size: 15px;
  font-weight: 500;
  opacity: .9;
}

.contact-btn {
  display: inline-block;
  margin-top: 10px;
  padding: 10px 20px;
  border: 1px solid #fff;
  color: #fff;
  text-decoration: none;
  border-radius: 2px;
  line-height: 1.2;
  white-space: nowrap;
}

.faq-right {
  width: 65%;
}

.faq-item {
  border-bottom: 1px solid #ccc;
  padding: 25px 0;
}

.faq-question {
  width: 100%;
  background: none;
  border: none;
  font-family: HelveticaNowDisplay, "Helvetica Now Display", Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.01em;
  text-transform: none;
  display: flex;
  align-items: center;
  gap: 18px;
  justify-content: space-between;
  cursor: pointer;
  color: black;
  text-align: left;
}

.icon {
  flex: 0 0 auto;
  font-size: 20px;
  font-weight: 400;
  transition: transform 0.3s ease;
}

.faq-item.open .icon {
  transform: rotate(45deg);
}

.faq-answer {
  font-family: HelveticaNowDisplay, "Helvetica Now Display", Helvetica, Arial, sans-serif;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: max-height 0.3s ease, opacity 0.3s ease;
  margin-top: 0;
}

.faq-answer p {
  font-weight: 400;
  letter-spacing: 0;
}

.faq-item.open .faq-answer {
  max-height: 400px;
  opacity: 1;
  margin-top: 15px;
}

/* ----------------------------- */
/* iPad / Tablet (= 1024px)      */
/* ----------------------------- */
@media (max-width: 1024px) {
  .faq-container {
    flex-direction: column;
    gap: 40px;
    padding: 0 30px;
    max-width: 100%;
  }

  .faq-left,
  .faq-right {
    width: 100%;
  }

  .faq-left h2 {
    font-size: 28px;
    position: static;
  }

   .faq-left p {
    position: static;
   }

  .faq-contact-box {
    margin-top: 30px;
    padding: 25px;
  }

  .faq-question {
    font-size: 15px;
    letter-spacing: -0.01em;
  }
}

/* ----------------------------- */
/* Mobile (= 768px)              */
/* ----------------------------- */
@media (max-width: 768px) {
  .faq-wrapper {
    padding: 25px 0;
  }

  .faq-container {
    padding: 0 20px;
    gap: 30px;
  }

  .faq-left h2 {
    font-size: 24px;
    line-height: 1.3;
    position: static;
  }

  .faq-left p {
    font-size: 15px;
    position: static;
  }

  .faq-contact-box {
    padding: 20px;
    clip-path: polygon(0 0, calc(100% - 20px) 0, 100% 20px, 100% 100%, 0 100%);
    gap: 12px;
  }

  .faq-contact-box::after {
    width: 20px;
    height: 20px;
  }

  .contact-btn {
    padding: 8px 16px;
    font-size: 14px;
    margin-top: 8px;
  }

  .faq-item {
    padding: 20px 0;
  }

  .faq-question {
    font-size: 15px;
    letter-spacing: -0.01em;
  }

  .icon {
    font-size: 18px;
  }

  .faq-answer p {
    font-size: 15px;
    line-height: 1.5;
  }
}

/* ------------------------------------ */
/* Extra Small Mobile (= 480px optional) */
/* ------------------------------------ */
@media (max-width: 480px) {
  .faq-left h2 {
    font-size: 20px;
    position: static;
  }

  .faq-question {
    font-size: 14px;
  }

  .faq-answer p {
    font-size: 14px;
    position: static;
  }
}



/* ===== Mega Footer (Referenz-Look) ===== */
.mf{
  --bg:#111;
  --ink:#e9edf5;
  --muted:#9aa3ad;
  --line:#1a202b;
  --accent:#0b49ff;     /* Button/Accent – ändere bei Bedarf */
  background:var(--bg); color:var(--ink);
  padding: clamp(40px, 7vh, 80px) 0 28px;
}
.mf .container{  margin-inline:auto; max-width: 1680px; }

/* Top: Title + Subscribe */
.mf__top{
  display:grid; grid-template-columns: 1.1fr 1fr; align-items:center; gap:min(6vw,15px);
  padding-bottom:22px; border-bottom:1px solid var(--line);
}
@media (max-width:900px){ .mf__top{ grid-template-columns:1fr; gap:18px;padding: 50px 20px;} }

.mf__title{ margin:0; font-weight:400; line-height:1.05; font-size:clamp(26px,4.2vw,40px); }
.mf__title .accent{ color:var(--accent); }

.mf__form{ display:flex; gap:10px; justify-content:flex-end; }
.mf__input{
  flex:1; min-width:260px; max-width:460px;
  height:44px; padding:0 16px; color:#cfd7e6;
  background:#171a20; border:1px solid #232a36; outline:none; font-family: inherit; border-radius: 2px;
}
.mf__input::placeholder{ color:#7f8792; }
.mf__btn{
  height:44px; padding:0 18px; border:0; cursor:pointer;
  background:var(--accent); color:white; font-weight:700;    font-weight: 400;
    font-family: HelveticaNowDisplay, "Helvetica Now Display", Helvetica, Arial, sans-serif;border-radius: 2px;
}
.mf__btn:hover{ filter:brightness(1.05); }

.sr-only{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0; }

/* Columns */
.mf__cols{
  display:grid; grid-template-columns: repeat(5, minmax(160px,1fr));
  gap:min(5vw,40px); padding-top:24px;
}
@media (max-width:1000px){ .mf__cols{ grid-template-columns:1fr 1fr 1fr; } }
@media (max-width:640px){ .mf__cols{ grid-template-columns:1fr 1fr; padding: 50px 20px; }  }

.mf__colttl{
  margin:0 0 10px; font-size:13px; font-weight:700; color:#cdd6e3; letter-spacing:.02em;
}
.mf__list{ list-style:none; margin:0; padding:0; display:grid; gap:0px; }
.mf__list a{ color:#ffffff; opacity:.9; text-decoration:none; }
.mf__list a:hover{ text-decoration:underline; text-underline-offset:2px; opacity:1; }

/* Bottom bar */
.mf__bottom{
  display:flex; align-items:center; justify-content:space-between;
  gap:16px; padding-top:30px; margin-top:6px; border-top:1px solid var(--line);
  color:#93a0b1; font-size:13px;
}
@media (max-width:700px){
  .mf__bottom{ flex-direction:column; align-items:flex-start; gap:10px; }
}

.mf__lang{ display:flex; align-items:center; gap:8px; }
.mf__copy{ opacity:.9; }
.mf__social{ display:flex; gap:10px; }
.mf__soc{
  display:grid; place-items:center; width:36px; height:36px; border-radius: 2px;
  background:#161a22; border:1px solid #232a36; color:#cfd7e6;
}
.mf__soc:hover{ background:#1c2230; color:#fff; }

.mf__brand{max-width:320px}
.mf__logo img{display:block;height:auto}
.mf__claim{margin:.6rem 0 1rem;color:#cbd3e1}
.mf__addr{font-style:normal;line-height:1.5;color:#e4ebf8;margin: 2rem 0rem;}
.mf__contact{margin:.6rem 0;line-height:1.6}
.mf__contact a{color:#eaf1ff;text-decoration:none;}
.mf__contact a:hover{text-decoration:underline}
.mf__hq{margin-top:.35rem;color:#9aa3ad;font-size:.92rem}
.mf__map{display:inline-block;margin-bottom:.35rem}


:root{
  --blue:#0836ff;           /* Primärblau */
  --ink:#0b0d0d;
  --muted:#a9b1bb;
  --white:#fff;

  /* Scroll-Progress der Section (0..1) – wird via JS gesetzt */
  --p:0;

  /* Minimal-/Maximalgrößen für Pfeile (einfach anpassen) */
  --h-min: 240px; /* kleiner horizont. Pfeil */
  --h-max: 880px; /* großer horizont. Pfeil */
  --v-min: 340px; /* kleiner vertikaler Pfeil */
  --v-max: 520px; /* großer vertikaler Pfeil */
}

/* Grundlayout */
.buildcta{
  background:#000000;
  color:var(--white);
  position:relative;
  overflow:hidden;
  padding:80px 0 120px;
  padding-bottom: 0rem;
  /* dezent: diagonales Linienmuster */
  background-image:
    radial-gradient(transparent 0 46%,rgba(255,255,255,.04) 47%),
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 420px 420px, 48px 48px, 48px 48px;
}
.buildcta .container{max-width:1200px;margin:0 auto;padding:0 20px}

.buildcta__title{
  font-size:clamp(28px,3.3vw,48px);
  line-height:1.15;
  font-weight:400;
  letter-spacing:.01em;
  text-align:center;
  margin:0 0 22px;
}
.buildcta__actions{
  display:flex;gap:14px;justify-content:center;margin-bottom:38px
}
/* Container */
.cta-buttons {
    display: flex;
    gap: 15px;
    justify-content: left;
    margin-top: 20px;
}

/* Grund-Button-Style */
.cta-btn {
    font-size: 12px;
    font-weight: 400;
    padding: 12px 19px;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 2px;
    transition: all 0.3s ease;
}

/* Weißer Button */
.cta-btn--primary {
    background-color: white;
    color: black;
    border: none;
}

.cta-btn--primary:hover {
    background-color: #f0f0f0;
}

/* Umrandeter Button */
.cta-btn--secondary {
    background-color: transparent;
    color: white;
    border: 2px solid white;
}

.cta-btn--secondary:hover {
    background-color: rgb(0, 0, 0);
    color: rgb(255, 255, 255);
}
/* ===== Topminers "Mehr im Shop" Link ===== */
.tm-more {
  margin-top: 48px;
  text-align: center;
}

.tm-more__btn {
  display: inline-block;
  padding: 14px 28px;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #fff;
  background: var(--blue);
  border: 2px solid var(--blue);
  border-radius: 2px;
  transition: all 0.3s ease;
}

.tm-more__btn:hover {
  background: transparent;
  color: var(--blue);
}


/* Produktbild + Outline */
.buildcta__media{
  position:relative;margin:0 auto;max-width:1000px
}
.buildcta__media img{
  width:100%;height:auto;display:block;
  border-radius: 2px;
}
.buildcta__outline{
  position:absolute;inset:10% 8% auto 8%;
  height:78%; border:1.5px solid rgba(255,255,255,.45);
  border-radius: 2px; pointer-events:none;
}

/* Maß-Pfeile */
.dim{
  position:absolute;z-index:2;display:flex;align-items:center;gap:10px;color:#fff
}
.dim__track{
  overflow:hidden; /* Trick: wir „schneiden“ die SVG auf die berechnete Länge */
  border-radius: 2px;
}
.dim__svg{
  display:block; width:100%; height:35px;
  fill:none; stroke:#fff; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round;
  filter:drop-shadow(0 1px 0 rgba(0,0,0,.15));
}
.dim__label{
  font-weight:800; letter-spacing:.06em; font-size:12px; opacity:.9
}

/* Horizontaler Pfeil – Breite wird über --p zwischen --h-min und --h-max gemorpht */
.dim--h{ left:50%; transform:translateX(-50%); top:calc(50% - 85px) }
.dim--h .dim__track{
  width:calc( var(--h-min) + (var(--h-max) - var(--h-min)) * var(--p) );
}

/* Vertikaler Pfeil – Höhe wird über --p zwischen --v-min und --v-max gemorpht */
.dim--v{ left:calc(50% - 520px); top:calc(50% - 220px); flex-direction:column }
.dim--v .dim__track{
  width:28px;
  height:calc( var(--v-min) + (var(--v-max) - var(--v-min)) * var(--p) );
}

/* Responsiv Platzierungen feinjustieren */
@media (max-width:1200px){
  .dim--v{ left:calc(50% - 46vw) }
}
@media (max-width:820px){
  .buildcta{padding:64px 0 96px}
  .dim--h{ top:calc(50% - 110px) }
  .dim--v{ display:none } /* auf kleinen Screens nur horizontalen Pfeil zeigen */
  .dim__svg{display: none;}
}

/* ===== Top Miners (BitKastl style) ===== */
:root{
  --bk-blue:#0000ff;
  --bk-ink:#0b0c0e;
  --bk-card:#0f1621; /* deep blue/graphite card */
  --bk-line:#1e2633;
}
.section-pad{padding:64px 0}
.eyebrow{
  font-size:12px; letter-spacing:.14em; text-transform:uppercase;
  color:var(--bk-blue); margin:0 0 10px 0; font-weight:800;text-align: center;
}
.section-title{ margin:0 0 28px 0; font-size:28px; color:var(--bk-ink) }

/* Grid */
.tm-grid{
  display:grid; gap:28px; grid-template-columns:repeat(3,1fr);
}
@media (max-width:1100px){ .tm-grid{ grid-template-columns:repeat(2,1fr) } }
@media (max-width:720px){ .tm-grid{ grid-template-columns:1fr } }

/* Card */
.tm-card{
  position:relative; background:var(--bk-card); color:#eaf2ff;
  border:1px solid var(--bk-line);
  padding:22px 22px 20px; text-align:center;
  overflow:hidden; transform:translateY(10px); opacity:0;
  transition:transform .35s ease, opacity .35s ease, box-shadow .25s ease, border-color .25s ease;
}
.tm-card.reveal{ transform:none; opacity:1 }
.tm-card:hover{
  border-color:#2b3850; box-shadow:0 10px 30px rgba(0,0,0,.18);
}

/* Ribbon */
.tm-ribbon {
    position: absolute;
    top: 0px;
    right: -29px;
    background: var(--bk-blue);
    color: #ffffff;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: .06em;
    font-size: 12px;
    padding: 6px 60px;
    box-shadow: 0 5px 40px #0000ff99;
}

/* Brand */
.tm-brand{
  font-size:12px; letter-spacing:.24em; opacity:.7; margin-bottom:8px;
}

/* Image */
.tm-media{ margin:10px 0 8px 0 }
.tm-media img{ height:180px; width:auto; object-fit:contain; filter:drop-shadow(0 8px 20px rgba(0,0,0,.35)) }

/* Text */
.tm-name{ font-size:20px; margin:10px 0 6px 0 }
.tm-sub{ margin:0; opacity:.8; font-weight:700; letter-spacing:.02em }
.tm-spec{ margin:6px 0 12px 0; opacity:.75; font-size:14px }
.tm-price{
  color:var(--bk-green); font-weight:400; font-size:22px; margin:6px 0 6px;
}
.tm-note{ margin:0 0 14px; opacity:.6; font-size:12px }

/* Actions */
.tm-actions{ display:flex; gap:10px; justify-content:center }
.tm-actions .btn.small{ height:40px; padding:0 16px; font-size:13px;font-family: HelveticaNowDisplay, "Helvetica Now Display", Helvetica, Arial, sans-serif;line-height: 15px; }

/* Button fallbacks if needed */
.btn{display:inline-flex;align-items:center;justify-content:center;height:44px;padding:0 18px;font: 400 13px / 1 HelveticaNowDisplay, "Helvetica Now Display", Helvetica, Arial, sans-serif;letter-spacing:.02em;text-decoration:none;}
.btn--outline{border:1.5px solid #e1e6f0;color:#000000;background:transparent}
.btn--outline:hover{border-color:var(--bk-blue);background:rgb(255, 255, 255)}
.btn--primary{background:var(--bk-blue);color:#fff;border:1.5px solid var(--bk-blue)}
.btn--primary:hover{filter:brightness(1.05)}


/* ===== Theme tokens (match your site) */
:root{
  --bk-bg:#0b0d0d;
  --bk-fg:#f4f6f8;
  --bk-muted:#b8c0c6;
  --bk-border:#1a1c1c;
  --bk-blue:#0040ff;        /* your blue */
  --bk-blue-2:#2a5bff;      /* lighter hover */
}

/* Layout helpers */
.container{max-width:1680px;margin:0 auto;padding:0 13px}

/* Section */
.bk-feature{
  background:var(--bk-bg);
  color:var(--bk-fg);
  position:relative;
  overflow:hidden;
  padding:96px 0 88px;
}
.bk-feature__inner{
  display:grid;
  grid-template-columns: 1.15fr 1fr;
  align-items:center;
  gap:48px;
}

/* Left */
.bk-kicker{
  display:flex;gap:8px;align-items:center;
  color:var(--bk-muted);
  letter-spacing:.16em;text-transform:uppercase;
  font-weight:700;font-size:12px;margin-bottom:12px;
}
.bk-kicker svg{color:var(--bk-blue)}
.bk-title{
  font-size:48px;line-height:1.05;margin:0 0 16px;
  letter-spacing:.01em;
}
.bk-lead{
  color:var(--bk-muted);
  max-width:58ch;margin:0 0 24px;font-size:16px;line-height:1.6;
}
.bk-actions{display:flex;gap:12px;margin:22px 0 28px}

/* Buttons */
.bk-btn{
  --h:44px;display:inline-flex;align-items:center;justify-content:center;
  height:var(--h);padding:0 18px;border-radius: 2px;
  font-weight:400;letter-spacing:.06em;text-transform:uppercase;
  font-size:12px;text-decoration:none;border:1.5px solid transparent;
  transition:.2s ease;
}
.bk-btn--primary{background:var(--bk-blue);color:#fff;border-color:var(--bk-blue)}
.bk-btn--primary:hover{background:var(--bk-blue-2);border-color:var(--bk-blue-2);transform:translateY(-1px)}
.bk-btn--ghost{background:transparent;color:#fff;border-color:#2d3133}
.bk-btn--ghost:hover{border-color:var(--bk-blue);color:#fff}

/* Bullets */
.bk-bullets{display:grid;gap:10px;margin:22px 0 0;padding:0;list-style:none}
.bk-bullets li{display:flex;gap:10px;align-items:center;color:var(--bk-muted)}
.bk-bullets .ico{display:grid;place-items:center;color:var(--bk-blue);opacity:.9}

/* Right side */
.bk-feature__visual{
  position:relative;isolation:isolate;min-height:520px;
}
.bk-pattern{
  position:absolute;inset:-10% -15% -10% auto;
  width:120%;height:120%;
  z-index:0;pointer-events:none;
  transform:translateZ(0);
}
.bk-product{
  position:relative;z-index:2;margin:0;
  filter:drop-shadow(0 30px 70px rgba(0,0,0,.45));
}
.bk-product img{
  display:block;max-width:100%;height:auto;

}

/* Subtle entrance */
.bk-feature__copy{animation:bk-fade-up .6s ease both .05s}
.bk-feature__visual{animation:bk-fade-up .6s ease both .15s}
@keyframes bk-fade-up{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

/* Responsive */
@media (max-width:1024px){
  .bk-feature__inner{grid-template-columns:1fr;gap:36px}
  .bk-pattern{inset:-5% -10% -5% -10%;width:130%}
  .bk-title{font-size:40px}
}
@media (max-width:640px){
  .bk-title{font-size:34px}
  .bk-actions{flex-wrap:wrap}
}
 

/* ===== BitKastl Compare ===== */
:root{ --ok:#19c37d; --warn:#ff8b3d; --info:#6a6f78 }
.cmp{position:relative;padding: 50px 5px; background:#fff}
.cmp .section-title{margin-bottom:14px;text-align: center;}

.cmp__table{
  border:1px solid var(--border);
  border-radius: 2px;
  box-shadow:0 12px 28px rgba(0,0,0,.06);
  overflow:hidden;
  position:relative;
  background:
    radial-gradient(60% 50% at 14% 12%, rgba(0,85,255,.06), transparent 55%),
    radial-gradient(55% 45% at 90% 85%, rgba(0,85,255,.05), transparent 60%),
    #fff;
}

/* Grid rows */
.cmp__row{
  display:grid;
  grid-template-columns: 220px 1fr 1fr;
  border-top:1px solid var(--border);
}
.cmp__row:first-child{border-top:0}
.cmp__row--head{
  background:linear-gradient(0deg,#f7f9fc,#fff);
  position:relative;
}

/* Cells */
.cmp__cell{padding:14px 16px; display:flex; align-items:center; gap:10px; font-weight: 500;}
.cmp__cell--stub{
  font-weight:800; letter-spacing:.08em; color:#6a6f78; text-transform:uppercase; font-size:12px;
  background:#f7f8fb;
}
.cmp__cell--mining,.cmp__cell--buy{font-weight:700}
.cmp__pill{
  display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius: 2px;
  font-size:12px; letter-spacing:.06em; text-transform:uppercase; color:#0b0c0e;
  border:1px solid var(--border); background:#fff; position:relative; overflow:hidden;
}
.cmp__pill::after{
  content:""; position:absolute; inset:-1px; width:140%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.65), transparent);
  transform:translateX(-120%); animation: cmpShine 4s ease-in-out infinite;
}
.cmp__pill--mining{border-color:rgba(25,195,125,.45); box-shadow:inset 0 0 0 1px rgba(25,195,125,.28)}
.cmp__pill--buy{border-color:#cfd6e2}

@keyframes cmpShine{
  0%,60%{transform:translateX(-120%)} 80%{transform:translateX(20%)} 100%{transform:translateX(120%)}
}


  .bkico.ok::after {
    content: "";
    position: absolute;
    left: 6px;
    top: 8px;
    width: 10px;
    height: 2px;
    background: #fff;
    transform: rotate(130deg);
  }

  .bkico.ok::before {
    content: "";
    position: absolute;
    left: 3px;
    top: 10px;
    width: 6px;
    height: 2px;
    background: #fff;
    transform: rotate(30deg);
  }

/* States */
.cmp__good{background:rgba(25,195,125,.08)}
.cmp__neutral{background:#eef3fa}
.cmp__bad{background:rgba(255,139,61,.08)}

/* Icons (pure CSS) */
.ico{width:18px;height:18px;border-radius: 2px;display:inline-block;position:relative;flex:0 0 18px}
.ico.ok{background:var(--ok)}
.bkico.ok::after {
    content: "";
    position: absolute;
    left: 6px;
    top: 8px;
    width: 10px;
    height: 2px;
    background: #fff;
    transform: rotate(130deg);
}
.bkico.ok::before {
    content: "";
    position: absolute;
    left: 3px;
    top: 10px;
    width: 6px;
    height: 2px;
    background: #fff;
    transform: rotate(30deg);
}
.ico.warn{background:var(--warn);box-shadow:inset 0 0 0 2px rgba(255,255,255,.6)}
.ico.warn::after{content:"!";position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);color:#fff;font-weight:900;font-size:12px}
.ico.info{background:#000fff;box-shadow:inset 0 0 0 2px #fff}
.ico.info::after{content:"i";position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);color:rgb(255, 255, 255); font-weight:900; font-size:12px}

/* Row hover / motion */
.cmp__row:not(.cmp__row--head):hover{filter:brightness(0.98)}
.cmp__row:not(.cmp__row--head) .cmp__cell{transition:background .25s ease}

/* Foot */
.cmp__foot{margin-top:18px}
.cmp__note{margin:0 0 8px; font-size:13px; color:var(--muted)}
.cmp__fazit{
  border:1px dashed var(--border); border-radius: 2px; padding:12px 14px; background:#f9fafb; margin-bottom:12px
}
.cmp__ctas{display:flex; gap:12px; flex-wrap:wrap}

/* Reveal on scroll */
.cmp [data-reveal]{opacity:0; transform:translateY(10px); transition:opacity .5s ease, transform .5s ease}
.cmp .is-in{opacity:1; transform:none}

/* Responsive */
@media (max-width:860px){
  .cmp__row{grid-template-columns:1fr}
  .cmp__cell--stub{background:#f1f3f6}
  .cmp__row--head{display:none}
  .cmp__cell{padding:12px 14px}
  .cmp__cell + .cmp__cell{border-top:1px solid var(--border)}
}

/* (Rest deiner bkcta-Styles bleiben gleich; falls du die Eyebrow-Klasse noch hast, kannst du sie entfernen) */
/* --- Standort-Karten (Sitecard) wie im Beispiel --- */
.sitecard{
  position:relative; display:block; background:#fff; color:#0b0c0e;
  border:1px solid var(--border); border-radius: 2px; overflow:hidden;
  box-shadow:0 10px 24px rgba(0,0,0,.08);
  transition:transform .95s ease, box-shadow .25s ease, border-color .25s ease;
  flex:0 0 calc(50% - 12px);  /* 2 im View (wie deine loccards) */
}
.sitecard:hover{
  transform:translateY(-4px);
  border-color:rgba(0,85,255,.35);
  box-shadow:0 16px 36px rgba(0,0,0,.14);
}
@media(max-width:900px){ .sitecard{ flex-basis:100% } }


/* Bild oben */
.sitecard__media{ height:220px; background:#0b0d0d; overflow:hidden }
.sitecard__media img{ width:100%; height:100%; object-fit:cover; display:block; }

/* Body unten */
.sitecard__body{ padding:12px 14px 14px; }
.sitecard__head{
  display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px;
}
.sitecard__title{ margin:0; font-size:18px; font-weight:700; }
.sitecard__price{ font-weight:600; color:#334; margin-left:6px; }

/* Status-Badge (über data-status steuerbar) */
.sitecard__badge{
  font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase;
  padding:6px 10px; border-radius: 2px; border:1px solid; white-space:nowrap;
}
.sitecard[data-status="available"] .sitecard__badge{ color:#15a06a; border-color:#a6e6cd; background:#e8fbf3; }
.sitecard[data-status="limited"]   .sitecard__badge{ color:#b05b00; border-color:#ffd9a8; background:#fff4e6; }
.sitecard[data-status="full"]      .sitecard__badge{ color:#6a6f78; border-color:#d3d8e2; background:#f1f4f8; }

/* Specs: 2 Spalten wie im Screenshot */
.sitecard__specs{
  display:grid; grid-template-columns:1fr 1fr; gap:10px 18px;
  padding-top:8px; border-top:1px solid var(--border);
}
.sitecard__specs dt{ color:#6a6f78; font-size:13px; }
.sitecard__specs dd{ margin:0; text-align:right; font-weight:600; }
.sitecard__specs > div{ display:grid; grid-template-columns:1fr auto; align-items:center; }

/* Reveal (falls du die 'is-in' Klasse vom Slider nutzt) */
.locslider [data-reveal], .sitecard{ opacity:0; transform:translateY(8px); }
.locslider .is-in, .sitecard.is-in{ opacity:1; transform:none; }

/* Optional: kleiner grüner Punkt vor "verfügbar" (wenn gewünscht)
.sitecard[data-status="available"] .sitecard__badge::before{
  content:""; width:8px;height:8px;border-radius: 2px;background:#19c37d;display:inline-block;margin-right:6px;
}

/* =============================== */
/*   PREMIUM-HOSTING SITE CARDS    */
/* =============================== */
.proj-two{ padding: 55px 0;padding-bottom: 1px; }
.proj-two .wrap-1800{
  max-width: 1712px;
  margin: 0 auto;
  padding: 0 32px;
}

.locblock{
  display:grid;
  grid-template-columns: 1.25fr .75fr;
  gap: 70px;
  align-items:center;
  margin-bottom: 140px;
}

.locblock--reverse{ grid-template-columns: .75fr 1.25fr; }
.locblock--reverse .locblock__media{ order:2; }
.locblock--reverse .locblock__content{ order:1; }

/* IMAGE */
.locblock__media img{
  width:100%;
  margin: 0;
  height:520px;
  object-fit:cover;
  display:block;
}

.locblock__media{
  margin: 0;
  --loc-cut-size: 46px;
  clip-path: polygon(0 0, calc(100% - var(--loc-cut-size)) 0, 100% var(--loc-cut-size), 100% 100%, 0 100%);
  overflow: hidden;
}

.locblock--reverse .locblock__media{
  clip-path: polygon(var(--loc-cut-size) 0, 100% 0, 100% 100%, 0 100%, 0 var(--loc-cut-size));
}

/* CONTENT */
.locblock__content{ max-width: 560px; }

.locblock__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom: 18px;
}

/* BADGE */
.locblock__badge{
  display:inline-flex;
  align-items:center;
  padding: 8px 16px;
  border-radius: 2px;

  /* echtes Glas */
  background: linear-gradient(
    135deg,
    rgba(255,255,255,0.35),
    rgba(255,255,255,0.15)
  );
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);

  /* Glas-Kanten */
  border: 1px solid rgba(255,255,255,0.45);
  box-shadow:
    inset 0 1px 1px rgba(255,255,255,0.6),
    inset 0 -1px 1px rgba(0,0,0,0.08),
    0 8px 24px rgba(0,0,0,0.20);

  color:#000fff;
  font-size:12px;
  font-weight:600;
  letter-spacing:.04em;
}


/* LINK */
.locblock__link{
  font-size:13px;
  font-weight:700;
  color:#000fff;
  text-decoration:none;
  opacity:.85;
}
.locblock__link:hover{ opacity:1; text-decoration:underline; }

/* TYPO */
.locblock__title{
  font-size:48px;
  line-height:1.06;
  margin:0 0 14px;
  font-weight:500;
  letter-spacing:-.02em;
}

.locblock__lead{
  margin:0 0 22px;
  color:#555;
  font-size:16px;
  line-height:1.7;
}

/* FACTS */
.locblock__facts{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px 22px;
  margin-bottom: 22px;
}

.fact{
  border-top: 1px solid #ececec;
  padding-top: 12px;
  display:flex;
  justify-content:space-between;
  gap:14px;
}

.fact span{
  color:#7a7a7a;
  font-size:13px;
  font-weight:600;
}
.fact b{
  font-size:15px;
  font-weight:500;
  color:#111;
  white-space:nowrap;
}

.rate__titles{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.rate__sub{
  font-size:12px;
  font-weight:500;
  color:#8a8a8a;
  letter-spacing:.02em;
}

/* RATE BOX */
.locblock__rate{
  border:2px solid #000fff;
  border-radius: 2px;
  padding: 18px 20px;
  margin-bottom: 18px;
}

.rate__head{
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(0,15,255,.25);
  margin-bottom: 14px;
}

.rate__label{
  font-size:12px;
  font-weight:900;
  letter-spacing:.10em;
  text-transform:uppercase;
  color:#000fff;
}

.rate__big{
  font-size:34px;
  font-weight:500;
  letter-spacing:-.02em;
  color:#000fff;
}
.rate__big small{ font-size:14px; opacity:.85; }

/* RATE ROWS */
.rate__rows{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.rate__row{
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding: 12px 14px;
  border-radius: 2px;
  background:#f7f8ff;
  border:1px solid rgba(0,15,255,.15);
}

.rate__row span{ color:#333; font-size:14px; font-weight:600; }
.rate__row b{ font-size:14px; font-weight:500; color:#000fff; }
.rate__row small{ font-size:12px; opacity:.8; }

/* ACTIONS */
.locblock__actions{
  display:flex;
  gap:14px;
  align-items:center;
}

.locblock__cta{
  height:54px;
  padding: 0 34px;
  border-radius: 2px;
  background:#000fff;
  color:#fff;
  font-weight:500;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.locblock__ghost{
  height:54px;
  padding: 0 22px;
  border-radius: 2px;
  background:transparent;
  border:1px solid rgba(0,15,255,.35);
  color:#000fff;
  font-weight:500;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.locblock__ghost:hover{ border-color:#000fff; }

/* =========================
   MOBILE OPTIMIERUNG (add-on)
   -> Einfach UNTER dein bestehendes CSS kopieren
   ========================= */

/* Tablet & kleiner: 1 Spalte, saubere Abstände */
@media (max-width: 1024px){
  .wrap-1800{ padding: 0 20px; }

  .locblock,
  .locblock--reverse{
    grid-template-columns: 1fr;
    gap: 28px;
    margin-bottom: 90px;
  }

  /* reverse: Content oben, Bild unten */
  .locblock--reverse .locblock__media{ order: 2; }
  .locblock--reverse .locblock__content{ order: 1; }

  .locblock__content{ max-width: 100%; }

  .locblock__media{ --loc-cut-size: 34px; }

  /* Bildhöhe skaliert schön */
  .locblock__media img{
    height: clamp(240px, 45vw, 380px);
  }

  .locblock__title{
    font-size: 38px;
    line-height: 1.12;
  }
}

/* Mobile: Typo + Rate Box + Buttons clean */
@media (max-width: 560px){
  .proj-two{ padding: 72px 0; padding-bottom: 1px; }
  .wrap-1800{ padding: 0 16px; }

  .locblock{ gap: 22px; margin-bottom: 72px; }

  .locblock__media{ --loc-cut-size: 24px; }

  .locblock__top{
    gap: 12px;
    margin-bottom: 12px;
    align-items: flex-start;
  }

  .locblock__badge{
    padding: 6px 12px;
    font-size: 11px;
  }

  .locblock__link{
    font-size: 12px;
  }

  .locblock__media img{
    height: 240px;
  }

  .locblock__title{
    font-size: 28px;
    line-height: 1.15;
    margin-bottom: 10px;
  }

  .locblock__lead{
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 16px;
  }

  /* Facts erst hier 1-spaltig -> weniger gequetscht */
  .locblock__facts{
    grid-template-columns: 1fr;
    gap: 10px;
    margin-bottom: 16px;
  }

  .fact{
    padding-top: 10px;
    gap: 12px;
  }

  .fact span{ font-size: 12px; }
  .fact b{ font-size: 14px; }

  /* Rate Box ruhiger */
  .locblock__rate{
    padding: 14px 14px;
    margin-bottom: 14px;
  }

  .rate__head{
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    padding-bottom: 12px;
    margin-bottom: 12px;
  }

  .rate__label{
    font-size: 11px;
    letter-spacing: .08em;
  }

  .rate__sub{
    font-size: 11px;
  }

  .rate__big{
    font-size: 28px;
  }

  .rate__row{
    padding: 10px 12px;
    gap: 10px;
  }

  .rate__row span{ font-size: 13px; }
  .rate__row b{ font-size: 13px; }

  /* Buttons: Daumenfreundlich */
  .locblock__actions{
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }

  .locblock__cta,
  .locblock__ghost{
    width: 100%;
    height: 48px;
    padding: 0 18px;
    font-size: 14px;
  }
}
/* =========================
   iPad / Tablet: nebeneinander (kleiner)
   -> ersetzt deinen 1024px-Block
   ========================= */

/* iPad (bis 1024px): weiterhin 2-spaltig, aber kompakter */
@media (max-width: 1024px){
  .proj-two .wrap-1800{ padding: 0 22px; }

  .locblock{
    grid-template-columns: 1.15fr .85fr; /* etwas ausgeglichener */
    gap: 34px;
    margin-bottom: 90px;
    align-items:center;
  }

  .locblock--reverse{
    grid-template-columns: .85fr 1.15fr;
  }

  .locblock__content{ max-width: 100%; }

  .locblock__media img{
    height: 360px; /* kleiner als Desktop */
  }

  .locblock__title{
    font-size: 36px;
    line-height: 1.12;
    margin-bottom: 10px;
  }

  .locblock__lead{
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 16px;
  }

  .locblock__facts{
    gap: 10px 14px;
    margin-bottom: 16px;
  }

  .fact{
    padding-top: 10px;
  }

  .fact span{ font-size: 12px; }
  .fact b{ font-size: 14px; }

  .locblock__rate{
    padding: 14px 14px;
    margin-bottom: 14px;
  }

  .rate__big{ font-size: 28px; }
  .rate__row{ padding: 10px 12px; }
}

/* Mobile bleibt untereinander (dein 560px Block kann bleiben) */
@media (max-width: 560px){
  .proj-two{ padding: 20px 0; padding-bottom: 1px; }
  .proj-two .wrap-1800{ padding: 0 16px; }

  .locblock{
    grid-template-columns: 1fr;  /* erst hier stacken */
    gap: 22px;
    margin-bottom: 72px;
  }

  .locblock__media{ --loc-cut-size: 24px; }

  .locblock--reverse .locblock__media{ order: 0; }
  .locblock--reverse .locblock__content{ order: 0; }

  .locblock__media img{ height: 240px; }
  .locblock-media-grid{
    grid-template-columns: 1fr;
    grid-template-rows: 1.6fr 1fr;
    height: auto;
  }

  .locblock-media-grid__side{
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
  }

  .locblock-media-grid__main{
    height: 240px;
  }

  .locblock-media-grid__side img{
    height: 120px;
  }

  .locblock__top{ align-items:flex-start; margin-bottom: 12px; }
  .locblock__badge{ padding: 6px 12px; font-size: 11px; }

  .locblock__title{ font-size: 28px; line-height: 1.15; }
  .locblock__lead{ font-size: 15px; line-height: 1.6; }

  .locblock__facts{
    grid-template-columns: 1fr;
    gap: 10px;
    margin-bottom: 16px;
  }

  .rate__head{
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .rate__big{ font-size: 28px; }

  .locblock__actions{
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }

  .locblock__cta,
  .locblock__ghost{
    width: 100%;
    height: 48px;
    font-size: 14px;
  }
}

/* =====================================
/* ===== Top Miner Grid + Reveal ===== */
.topminers{padding:56px 0;background:#fff}
.topminers .section-title{margin:0 0 18px 0; text-align: center;}
.tm-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
@media (max-width:980px){ .tm-grid{grid-template-columns:repeat(2,1fr)} }
@media (max-width:620px){ .tm-grid{grid-template-columns:1fr} }

.tm-card{
  display:flex;flex-direction:column;align-items:stretch;
  border:1px solid var(--border);
  border-radius: 2px;background:#fff;overflow:hidden;
  box-shadow:0 6px 18px rgba(0,0,0,.06);
  /* Reveal base */
  opacity:0; transform:translateY(12px);
  transition:opacity .45s ease, transform .45s ease;
}
.tm-card.reveal{ opacity:1; transform:none; }

/* Inhalte */
.tm-brand{font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  font-size:12px;color:#000000;background:#f6f8fb;padding:10px 14px}
.tm-media{padding:14px;background-color: #0e1218;}
.tm-media img{width:100%;height:180px;object-fit:contain;display:block}
.tm-name{margin:6px 14px 0 14px;font-size:18p;color: #000000;}
.tm-sub{margin:2px 14px;color:var(--muted);font-size:13px}
.tm-spec{margin:8px 14px 0 14px;color:#2a2f36;font-size:13px}
.tm-price{margin:10px 14px 0 14px;font-weight:800;font-size:18px;color: #000000;}
.tm-note{margin:6px 14px 0 14px;color:var(--muted);font-size:12px}
.tm-actions{display:flex;gap:10px;padding:14px}
.tm-card.is-hot .tm-ribbon {
    position: absolute;
    margin: -2px 48px 0 10px;
    background: #0000ff;
    color: #fff;
    font-size: 13px;
    font-weight: 800;
    padding: 6px 10px;
    border-radius: 2px;
    z-index: 9;
}

/* Progressive Fallback, falls JS/Observer mal nicht feuert */
@media (prefers-reduced-motion:reduce){
  .tm-card{opacity:1;transform:none}
}
html.no-js .tm-card{opacity:1;transform:none}


/* === Mobile Drawer === */
.mnav-toggle{
  position:fixed; right:14px; top:54px;
  z-index:2000;                      /* höher als alles andere */
  color:#000; background:#fff;
  width:42px; height:42px;
  border:1px solid #e6e8eb; border-radius: 2px;
  display:flex; flex-direction:column; justify-content:center; align-items:center; gap:6px;
  padding:0 10px;
  box-shadow:0 4px 12px rgba(0,0,0,.06);
  -webkit-appearance:none; appearance:none;
  -webkit-tap-highlight-color:transparent;
}

.mnav-toggle span{
  display:block;                     /* statt flex */
  width:26px;                        /* WICHTIG für iOS */
  height:2px;
  background:currentColor;           /* nutzt .mnav-toggle color */
  border-radius: 2px;
  transition:transform .25s ease, opacity .2s ease;
}



/* Dein Drawer kann so bleiben */
.mnav{
  position:fixed; inset:0 0 0 auto;
  width:min(431px,100%); background:#fff; z-index:99999;
  transform:translateX(100%); transition:transform .35s ease; overflow:auto;
  box-shadow:-12px 0 30px rgba(0,0,0,.15);
}
.mnav.is-open{ transform:translateX(0) }

.mnav__head{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid #e6e8eb}
.mnav__logo{height:28px}
.mnav__close{border:0;background:#f5f7fb;width:36px;height:36px;border-radius: 2px;font-size:18px;cursor:pointer}

/* Accordion */
.mnav-sec{border-bottom:1px solid #f0f2f4}
.mnav-sec__btn{width:100%;padding:18px 16px;display:flex;align-items:center;justify-content:space-between; color: black;
  background:#fff;border:0;font-weight:400;letter-spacing:.02em;cursor:pointer;font-family: HelveticaNowDisplay, "Helvetica Now Display", Helvetica, Arial, sans-serif;font-size: 25px;}
.mnav-sec__panel{max-height:0;overflow:hidden;transition:max-height .35s ease, opacity .35s ease;opacity:0}
.mnav-sec.is-open .mnav-sec__panel{opacity:1}
.mnav-sec .chev{width:16px;height:16px;transform:rotate(0);transition:transform .25s}
.mnav-sec.is-open .chev{transform:rotate(180deg)}

/* Content */
.mnav-chips{display:flex;gap:8px;flex-wrap:wrap;padding:0 16px 12px}
.chip{border:1px solid #e6e8eb;border-radius: 2px;padding:8px 12px;background:#fff; color: black;}
.mnav-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 16px 16px}
.mcard{border:1px solid #e6e8eb;border-radius: 2px;overflow:hidden;display:flex;gap:10px;align-items:center;background:#fff}
.mcard img{width:50px;height:64px;object-fit:contain;background:#f6f7f9}
.mcard-t{padding-right:8px}
.mcard-t strong{font-size:14px;display:block;color: black}
.mcard-t span{color:#6a6f78;font-size:12px}
.mnav-more{display:block;padding:0 16px 16px;color:#0000ff}

.mnav-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 16px 16px;color: #000000;}
.msol{display:block;border:1px solid #e6e8eb;border-radius: 2px;padding:14px;background:#f7f9fc}
.mnav-subttl{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#6a6f78;margin:8px 16px}

.mnav-warranty{display:grid;gap:10px;padding:0 16px 16px}
.wcard{display:flex;gap:10px;align-items:center;border:1px solid #e6e8eb;border-radius: 2px;padding:12px;background:#fff}
.wcard img{width:80px;object-fit:contain}
.wcard-bt{height:26px}
.wcard-bd{height:24px}
.wcard-t strong{display:block;color: #000000;}
.wcard-t span{color:#6a6f78;font-size:12px}

.mnav-blog{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 16px 24px}
.bcard{display:flex;gap:10px;align-items:center;border:1px solid #e6e8eb;border-radius: 2px;padding:10px;background:#fff}
.bcard img{width:54px;height:54px;object-fit:cover;border-radius: 2px;color: black;}

/* Links */
.mnav-links{list-style:none;margin:0;padding:0 16px 16px;display:grid;gap:8px}
.mnav-links a{display:block;border:1px solid #e6e8eb;border-radius: 2px;padding:12px;background:#fff;color: black;}

/* Bottom CTA */
.mnav-cta{position:sticky;bottom:0;background:#fff;border-top:1px solid #e6e8eb;padding:12px;display:flex;gap:10px}
.mnav-cta .btn{flex:1}

@media(min-width:1024px){
  .mnav-toggle{display:none}
}

/* Reveal animations */
.mnav .mcard, .mnav .msol, .mnav .wcard, .mnav .bcard{
  opacity:0; transform:translateY(8px); transition:.35s ease;
}
.mnav .reveal{opacity:1; transform:translateY(0)}


@media (max-width: 840px) {
  .topbar{
    font-size: 8px;
  }

  
}

/* === CTA Section === */
.cta-section {
  position: relative;
  background: #0000ff;
  color: #fff;
  clip-path: polygon(0 0, 100% 15%, 100% 100%, 0 85%);
  padding: 100px 20px;
  overflow: hidden;
}

.cta-container {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 40px;
}

.cta-text h2 {
  font-size: 42px;
  margin-bottom: 18px;
  line-height: 1.2;
  font-weight: 400;
  padding-top: 6rem;
}

.cta-text p {
  font-size: 18px;
  opacity: 0.9;
  margin-bottom: 26px;
}

.cta-buttons {
  display: flex;
  gap: 16px;
}



.btn-primary {
  background: #fff;
  color: #0055ff;
}

.btn-primary:hover {
  background: #f0f0f0;
}

.btn-light {
  background: rgba(255,255,255,0.15);
  border: 1px solid rgba(255,255,255,0.3);
  color: #fff;
}

.btn-light:hover {
  background: rgba(255,255,255,0.25);
}

/* Bild mit Schwebanimation */
.cta-image img {
  width: 100%;
  max-width: 400px;
  animation: floaty 5s ease-in-out infinite;
}

@keyframes floaty {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-12px); }
}

/* Responsive */
@media(max-width: 900px){
  .cta-container { grid-template-columns: 1fr; text-align: center; }
  .cta-image { margin-top: 40px; }
}

/* Container fürs Bild */
.cta-image {
  position: relative;
  display: inline-block;
}

/* Schwebanimation fürs Bild */
.cta-image img {
  width: 104%;
  max-width: 585px;
  animation: floaty 5s ease-in-out infinite;
  position: relative;
  z-index: 2;
}

/* Striche unter dem Bild */
.cta-image::after {
     content: "";
    position: absolute;
    left: 82%;
    bottom: 11px;
    transform: translateX(-78%);
    width: 84%;
    height: 174px;
    background: repeating-linear-gradient(to bottom, rgb(255 255 255 / 24%) 0px, rgba(255, 255, 255, 0.08) 2px, transparent 2px, transparent 10px);
    opacity: 0.8;
    animation: flylines 2s 
linear infinite;
    z-index: 1;
    filter: blur(-1px);
}

/* Animation: Striche bewegen sich sanft nach unten */
@keyframes flylines {
  from { background-position: 0 0; }
  to   { background-position: 0 20px; }
}

 :root{
    --bg: #ffffff;
    --text: #000000;        /* slate-900 */
    --muted: #475569;       /* slate-600 */
    --border: #e2e8f0;      /* slate-200 */
    --soft: #f8fafc;        /* slate-50 */
    --shadow: 0 10px 30px rgba(2, 6, 23, .08);
    --radius: 16px;
    --accent: #0000ff;      /* near-black; replace with brand color if desired */
  }


  .switch-section{
    background: var(--bg);
    color: var(--text);
    padding: clamp(48px, 6vw, 88px) 0;
  }

  .switch-container{
    width: min(1650px, calc(100% - 40px));
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.05fr 1fr;
    gap: clamp(24px, 4vw, 56px);
    align-items: start;
  }

  .switch-kicker{
    font-size: 12px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--muted);
    margin: 0 0 10px 0;
  }

  .switch-title{
    font-size: clamp(28px, 3.2vw, 44px);
    line-height: 1.08;
    margin: 0 0 14px 0;
    font-weight: 400;
  }

  .switch-lead{
    font-size: 16px;
    line-height: 1.65;
    color: var(--muted);
    margin: 0 0 14px 0;
    max-width: 56ch;
  }

  .switch-body{
    font-size: 15px;
    line-height: 1.7;
    color: var(--muted);
    margin: 0 0 22px 0;
    max-width: 62ch;
  }

  .switch-actions{
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
  }

  .btn{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 16px;
    border-radius: 2px;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    border: 1px solid var(--border);
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
    user-select: none;
    white-space: nowrap;
  }

  


  .switch-right{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
  }

  .benefit-card1{
    background: var(--soft);
    border: 2px dashed var(--border);
    border-radius: 2px;
    padding: 18px 18px 16px;
    box-shadow: var(--shadow);
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
    min-height: 158px;
  }

  .benefit-card1:hover{
    transform: translateY(-2px);
    box-shadow: 0 16px 38px rgba(2, 6, 23, .10);
    background: #fff;
  }

  .benefit-icon{
    width: 40px;
    height: 40px;
    border-radius: 2px;
    display: grid;
    place-items: center;
    background: #fff;
    border: 1px solid var(--border);
    color: var(--accent);
    margin-bottom: 12px;
  }

  .benefit-title{
    margin: 0 0 6px 0;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: -.01em;
  }

  .benefit-text{
    margin: 0;
    font-size: 13.5px;
    line-height: 1.6;
    color: var(--muted);
  }

  /* Responsive */
  @media (max-width: 920px){
    .switch-container{ grid-template-columns: 1fr; }
    .switch-right{ grid-template-columns: 1fr 1fr; }
  }
  @media (max-width: 560px){
    .switch-right{ grid-template-columns: 1fr; }
    .benefit-card{ min-height: auto; }
  }

 /* SECTION */
.power-markets-section{
  background:#efece7;
  padding:56px 0;
}

.power-markets-section__container{
  width:calc(100% - 32px);
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr; /* mobile first */
  gap:40px;
  align-items:center;
}

/* IMAGE */
.power-markets-section__image{
  width:100%;
  height:auto;
  display:block;
}

/* CONTENT */
.power-markets-section__content{
  color:#111; /* dein blau war sehr hart */
}

.power-markets-section__kicker{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:14px;
}

.power-markets-section__kickerText{
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:600;
}

.power-markets-section__kickerIcon{ display:inline-flex; align-items:center; justify-content:center; color:#000fff; /* blaues Icon */ }

.power-markets-section__title{
  font-size:30px;
  line-height:1.15;
  font-weight:400;
  margin:0 0 16px 0;
}

.power-markets-section__lead{
  font-size:16px;
  line-height:1.6;
  margin:0 0 20px 0;
  font-weight:500;
}
.power-markets-section__check svg {
  stroke: #000fff;
}

/* CTA */
.power-markets-section__cta{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:8px;
  text-decoration:none;
  font-size:11px;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#111;
}

.power-markets-section__cta::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-3px;
  width:0%;
  height:1px;
  background:currentColor;
  transition:width .25s ease;
}

.power-markets-section__cta:hover::after{
  width:100%;
}

.power-markets-section__ctaIcon{
  transition:transform .2s ease;
}

.power-markets-section__cta:hover .power-markets-section__ctaIcon{
  transform:translateX(3px);
}

/* Divider – auf Mobile kürzer & cleaner */
.power-markets-section__divider{
  margin:28px 0 18px 0;
  height:1px;
  background:rgba(0,0,0,.2);
}

.power-markets-section__divider::after{
  display:none; /* bracket auf mobile aus */
}

/* BULLETS */
.power-markets-section__bullets{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.power-markets-section__media{
  order:2;
}

.power-markets-section__content{
  order:1;
}

.power-markets-section__bullet{
  display:flex;
  gap:10px;
}

.power-markets-section__check{
  color:#1a57ff;
  flex:0 0 auto;
  margin-top:2px;
}

.power-markets-section__bulletText{
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:600;
}

/* ===== TABLET ===== */
@media (min-width:768px){
  .power-markets-section{
    padding:72px 0;
  }

  .power-markets-section__container{
    width:min(1200px, calc(100% - 64px));
    gap:60px;
  }

  .power-markets-section__title{
    font-size:38px;
  }
}

/* ===== DESKTOP ===== */
@media (min-width:1024px){
  .power-markets-section{
    padding:40px 0;
  }

  .power-markets-section__container{
    width:min(1648px, calc(100% - 80px));
    grid-template-columns:1.2fr 0.8fr;
    gap:80px;
  }

  .power-markets-section__title{
    font-size:48px;
  }
   .power-markets-section__container{
    grid-template-columns:1.2fr 0.8fr;
  }

  /* Reihenfolge zurücksetzen */
  .power-markets-section__media{
    order:1;
  }

  .power-markets-section__content{
    order:2;
  }

  .power-markets-section__divider::after{
    display:block;
    content:"";
    position:absolute;
    right:0;

    top:-12px;
    width:140px;
    height:12px;
    border-top:2px solid rgba(0,0,0,.25);
    border-right:2px solid rgba(0,0,0,.25);
    border-top-right-radius:10px;
  }
}

/* ================================
   FEATURED PRODUCTS (Homepage)
   ================================ */

.featured-products{
  padding:50px 3px;
  background:#ffffff;
}

.section-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:32px;
}

.section-head h2{
  font-size:28px;
  font-weight:600;
  margin:0;
}

.shop-link{
  color:#000fff;
  font-weight:600;
  text-decoration:none;
}


/* ================================
   PRODUCT ROW / SLIDER
   ================================ */

.product-row-wrapper{
  position:relative;
}

.product-row{
  display:flex;
  gap:18px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  padding-bottom:10px;
}

.product-row::-webkit-scrollbar{
  display:none;
}

/* 3 Karten sichtbar */

.product-row .card{
  flex:0 0 calc((100% - 36px)/3);
  scroll-snap-align:start;
}


/* ================================
   CARD DESIGN
   ================================ */

.featured-products .card{
  --card-cut: 38px;
  background:#fff;
  border:0;
  border-radius: 2px;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  clip-path: polygon(0 0, calc(100% - var(--card-cut)) 0, 100% var(--card-cut), 100% 100%, 0 100%);
  display:flex;
  flex-direction:column;
  transition:0.25s;
      cursor: pointer;
}

.featured-products .card::before{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid #e5e7eb;
  clip-path: polygon(0 0, calc(100% - var(--card-cut)) 0, 100% var(--card-cut), 100% 100%, 0 100%);
  pointer-events:none;
  z-index:3;
  transition:border-color .25s ease;
}

/* Explicit diagonal border for the clipped corner */
.featured-products .card::after{
  content:"";
  position:absolute;
  left:calc(100% - var(--card-cut) + 1px);
  top:0;
  width:calc(var(--card-cut) * 1.55);
  height:1px;
  background:#e5e7eb;
  transform-origin:left center;
  transform:rotate(45deg);
  pointer-events:none;
  z-index:4;
  transition:background-color .25s ease, height .25s ease;
}


.featured-products .card:hover{
  border-color:transparent;
  box-shadow:0 0 0 1px rgba(0,71,255,.14);
}

.featured-products .card:hover::before{
  border-color:#0047ff;
  border-width:1px;
}

.featured-products .card:hover::after{
  background:#0047ff;
  height:2px;
}


/* ================================
   IMAGE AREA
   ================================ */

.featured-products .card .cover{
  height:180px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f3f4f6;
  border-bottom:1px solid #e5e7eb;
  overflow:visible; /* wichtig */
}

.featured-products .card .cover img{
  height:215px;
  width:auto;
  object-fit:contain;
  margin-top:39px;
  transition: transform 0.35s ease;
  transform-origin: center center;
}

.featured-products .card:hover .cover img{
  transform: scale(1.08);
}

.featured-products .card .body{
  position:relative;
  margin-top:0px; /* zieht den unteren Bereich hoch */
  background:#fff;
  border-top:1px solid #e5e7eb;
  padding:18px;
  z-index:2;
}


/* ================================
   CARD BODY
   ================================ */

.featured-products .card .body{
  padding:16px;
  display:flex;
  flex-direction:column;
  gap:10px;
}


/* Brand */

.featured-products .brand{
  font-size:12px;
  letter-spacing:.14em;
  color:#6b7280;
  text-transform:uppercase;
}


/* Title */

.featured-products .title{
  font-size:23px;
  font-weight:600;
}


/* ================================
   SPECS
   ================================ */

.featured-products .meta{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.featured-products .pill{
  background:#f3f4f6;
  border:1px solid #e5e7eb;
  color:#374151;
  font-size:12px;
  padding:6px 8px;
  border-radius: 2px;
  font-weight:600;
}


/* Stock Badge */

.featured-products .pill.stock{
  background:#E7F8EC;
  border-color:#B6E7C3;
  color:#1F8F4E;
}


/* Versand Badge */

.featured-products .badge{
  position:absolute;
  left:12px;
  top:12px;
  background:#EEF4FF;
  border:1px solid #C7D6FF;
  color:#1E40AF;
  padding:6px 10px;
  border-radius: 2px;
  font-size:12px;
  font-weight:600;
  z-index:9999;
}


/* ================================
   PRICE AREA
   ================================ */

.featured-products .footer{
  margin-top:10px;
}

.featured-products .price-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.featured-products .price{
  font-size:23px;
  font-weight:600;
}


/* Button */

.featured-products .btn-shop{
  height:40px;
  padding:0 18px;
  border-radius: 2px;
  background:#0047ff;
  color:#fff;
  border:none;
  font-size:11px;
  font-weight:600;
  letter-spacing:.05em;
  text-transform:uppercase;
  cursor:pointer;
}

.featured-products .btn-shop:hover{
  background:#0039d9;
}


/* Preis Hinweis */

.featured-products .price-note{
  margin-top:8px;
  padding-top:10px;
  border-top:1px dashed #d1d5db;
  color:#6b7280;
  font-size:12px;
}


/* ================================
   SLIDER ARROWS
   ================================ */

.row-nav{
  position:absolute;
  top:40%;
  transform:translateY(-50%);
  border:none;
  width:42px;
  height:42px;
  border-radius: 2px;
  background:#fff;
  box-shadow:0 8px 20px rgba(0,0,0,0.12);
  cursor:pointer;
  z-index:5;
}

.row-nav.left{
  left:-20px;
}

.row-nav.right{
  right:-20px;
}


/* ================================
   RESPONSIVE
   ================================ */

@media (max-width:900px){

.product-row .card{
  flex:0 0 calc((100% - 18px)/2);
}

}

@media (max-width:520px){

.product-row .card{
  flex:0 0 85%;
}

.row-nav{
  display:none;
}

.featured-products .card .body{
  padding:16px;
  display:flex;
  flex-direction:column;
  gap:10px;
  font-size: 15px;
}
}

.toprow{
  position: relative;
}

.badge.bestseller1{
  position:absolute;
  top:12px;
  left:12px;
  background:#000fff;
  color:#ffffff;
  border:none;
  padding:6px 10px;
  border-radius: 2px;
  font-size:12px;
  font-weight:600;
  z-index:5;
}

.badge.tag1{
  position:absolute;
  top:12px;
  left:110px;
}

/* ================================
   FEATURED PRODUCTS — PREMIUM CLIPPED
   ================================ */

.featured-products{
  padding:56px 3px;
  background:#ffffff;
}

.featured-products .section-head{
  margin-bottom:24px;
}

.featured-products .section-head h2{
  color:#101828;
  font-size:30px;
  font-weight:500;
  letter-spacing:-.04em;
}

.featured-products .shop-link{
  color:#0052ff;
  font-size:14px;
  font-weight:500;
}

.featured-products .product-row-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:4px;
}

.featured-products .product-row{
  gap:18px;
  padding:4px 2px 18px;
}

.featured-products .product-row .card{
  flex:0 0 min(31.2%, 520px);
}

.featured-products .card{
  --card-cut:34px;
  background:#ffffff;
  border:0;
  border-radius:0;
  padding:0;
  box-shadow:0 14px 34px rgba(15,23,42,.075), 0 1px 0 rgba(15,23,42,.04);
  clip-path:polygon(0 0, calc(100% - var(--card-cut)) 0, 100% var(--card-cut), 100% 100%, 0 100%);
  transition:transform .28s ease, box-shadow .28s ease;
}

.featured-products .card::before{
  border-color:#edf0f5;
  clip-path:polygon(0 0, calc(100% - var(--card-cut)) 0, 100% var(--card-cut), 100% 100%, 0 100%);
}

.featured-products .card::after{
  left:calc(100% - var(--card-cut));
  background:#edf0f5;
}

.featured-products .card:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 54px rgba(15,23,42,.12), 0 0 0 1px rgba(0,82,255,.05);
}

.featured-products .card:hover::before{
  border-color:#0052ff;
}

.featured-products .card:hover::after{
  background:#0052ff;
  height:1px;
}

.featured-products .card .cover{
  height:200px;
  position:relative;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 70%,#f1f5f9 100%);
  border-bottom:1px solid #eef2f7;
}

.featured-products .card .cover::before{
  content:"";
  position:absolute;
  inset:30px 18px auto;
  height:116px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(0,82,255,.10),rgba(0,82,255,0) 65%);
  filter:blur(8px);
}

.featured-products .card .cover img{
  position:relative;
  z-index:1;
  width:112%;
  height:100%;
  margin:0;
  object-fit:contain;
  object-position:left center;
  filter:drop-shadow(0 22px 20px rgba(15,23,42,.16));
  transition:none;
}

.featured-products .card:hover .cover img{
  transform:none;
}

.featured-products .card .body{
  margin:0;
  padding:14px 16px 16px;
  gap:9px;
  border-top:0;
}

.featured-products .brand{
  color:#8a94a6;
  font-size:11px;
  font-weight:500;
  letter-spacing:.22em;
}

.featured-products .title{
  color:#101828;
  font-size:24px;
  line-height:1.08;
  font-weight:500;
  letter-spacing:-.04em;
}

.featured-products .meta{
  gap:8px;
  flex-wrap:wrap;
}

.featured-products .pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:32px;
  padding:0 11px;
  border:0;
  border-radius:3px;
  background:#f6f8fb;
  color:#344054;
  font-size:13px;
  font-weight:500;
  box-shadow:inset 0 0 0 1px rgba(16,24,40,.03);
}

.featured-products .pill svg{
  width:16px;
  height:16px;
  color:#0052ff;
  flex:0 0 auto;
}

.featured-products .service-pill{
  color:#0052ff;
  background:#eef4ff;
}

.featured-products .service-pill.is-shipping{
  color:#166534;
  background:#ecfdf3;
}

.featured-products .stock-badge{
  position:absolute;
  top:8px;
  right:calc(var(--card-cut) + 8px);
  z-index:6;
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:7px;
  width:94px;
  min-height:30px;
  padding:0 10px;
  box-sizing:border-box;
  border-radius:3px;
  font-size:12px;
  font-weight:500;
  line-height:1;
  color:#16a34a;
  background:#ecfdf3;
  border:1px solid #86efac;
  box-shadow:0 8px 20px rgba(22,163,74,.12);
}

.featured-products .stock-badge::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:currentColor;
  box-shadow:0 0 0 4px rgba(34,197,94,.14);
  animation:featuredStockPulse 1.55s ease-in-out infinite;
}

@keyframes featuredStockPulse{
  0%, 100%{
    transform:scale(1);
    box-shadow:0 0 0 3px rgba(34,197,94,.16);
  }
  50%{
    transform:scale(1.16);
    box-shadow:0 0 0 6px rgba(34,197,94,.08);
  }
}

.featured-products .featured-bestseller-badge{
  position:absolute;
  top:40px;
  right:calc(var(--card-cut) + 8px);
  z-index:6;
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:5px;
  width:94px;
  min-height:26px;
  padding:0 9px 0 6px;
  box-sizing:border-box;
  border-radius:3px;
  font-size:11px;
  font-weight:500;
  line-height:1;
  color:#ffffff;
  background:#000fff;
  border:1px solid #000fff;
  box-shadow:0 7px 16px rgba(0,15,255,.18);
}

.featured-products .featured-bestseller-lottie{
  width:22px;
  height:22px;
  margin-left:-4px;
  margin-right:-3px;
  flex:0 0 auto;
}

.featured-products .featured-bestseller-fallback{
  display:none;
  width:14px;
  height:14px;
  color:#ffffff;
  line-height:1;
}

.featured-products.bundle-products .stock-badge,
.featured-products.bundle-products .featured-bestseller-badge{
  right:calc(var(--card-cut) + 10px);
  width:118px;
  justify-content:flex-start;
  white-space:nowrap;
}

.featured-products.bundle-products .stock-badge{
  top:10px;
  min-height:30px;
  padding:0 11px;
}

.featured-products.bundle-products .featured-bestseller-badge{
  top:44px;
  min-height:30px;
  padding:0 11px 0 7px;
}

.featured-products.bundle-products .featured-bestseller-lottie{
  width:21px;
  height:21px;
  margin-left:-3px;
  margin-right:-1px;
}

.featured-products.bundle-products .bundle-price-line{
  display:flex;
  align-items:baseline;
  gap:9px;
  flex-wrap:wrap;
}

.featured-products.bundle-products .bundle-old-price{
  color:#dc2626;
  font-size:14px;
  font-weight:600;
  line-height:1;
  text-decoration:line-through;
  text-decoration-thickness:2px;
  white-space:nowrap;
}

.featured-products.bundle-products .bundle-sale-price{
  color:#101828;
}

.featured-products .spec{
  color:#8a94a6;
  font-size:11px;
  font-weight:500;
  line-height:1.25;
  max-width:250px;
}

.featured-products .price-prefix{
  color:#667085;
  font-size:12px;
  font-weight:500;
  line-height:1;
}

.featured-products .price-wrap{
  display:grid;
  gap:5px;
  min-width:0;
}

.featured-products .footer{
  margin-top:0;
}

.featured-products .price-row{
  align-items:flex-end;
  gap:12px;
}

.featured-products .price{
  color:#101828;
  font-size:24px;
  line-height:1;
  font-weight:500;
  letter-spacing:-.04em;
  white-space:nowrap;
}

.featured-products .btn-shop{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  height:42px;
  min-width:122px;
  padding:0 13px 0 16px;
  border-radius:3px;
  background:#000fff;
  border:1px solid #000fff;
  font-size:12px;
  font-weight:500;
  letter-spacing:0;
  text-transform:none;
  box-shadow:0 12px 24px rgba(0,15,255,.22);
}

.featured-products .btn-shop:hover{
  background:#000bd8;
  border-color:#000bd8;
  transform:translateY(-1px);
  box-shadow:0 16px 30px rgba(0,15,255,.30);
}

.featured-products .btn-arrow{
  display:inline-block;
  width:auto;
  height:auto;
  background:transparent;
  box-shadow:none;
  font-size:15px;
  line-height:1;
  transform:translateX(0);
  transition:transform .22s ease;
}

.featured-products .btn-shop:hover .btn-arrow,
.featured-products .card:hover .btn-arrow{
  background:transparent;
}

.featured-products .card:hover .btn-arrow,
.featured-products .btn-shop:hover .btn-arrow{
  animation:featuredProductArrow .8s ease-in-out infinite;
}

@keyframes featuredProductArrow{
  0%, 100%{
    transform:translateX(0);
  }
  50%{
    transform:translateX(4px);
  }
}

/* ===== Power Compute / PV Onepager ===== */
.pc-page{
  --pc-ink:#11130f;
  --pc-muted:#5f665e;
  --pc-soft:#f4f5f0;
  --pc-lime:#c9ff3d;
  --pc-green:#22e098;
  --pc-dark:#11130f;
  --pc-line:rgba(17,19,15,.12);
  background:#f7f8f2;
  color:var(--pc-ink);
  overflow-x:hidden;
}

.pc-wrap{
  width:min(1650px, calc(100% - 56px));
  margin:0 auto;
}

.pc-kicker{
  margin:0 0 14px;
  color:rgba(201,255,61,.92);
  font-size:11px;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.pc-kicker--dark{
  color:#0b61ff;
}

.pc-hero{
  min-height:82vh;
  position:relative;
  overflow:hidden;
  background:#0c120e;
}

.pc-hero__media,
.pc-hero__media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.pc-hero__media img{
  object-fit:cover;
  object-position:center 58%;
}

.pc-hero__veil{
  display:none;
}

.pc-hero__inner{
  position:relative;
  z-index:1;
  min-height:82vh;
  padding:132px 0 112px;
  display:grid;
  grid-template-columns:minmax(0, .92fr) minmax(340px, .48fr);
  align-items:end;
  gap:56px;
}

.pc-hero__copy{
  max-width:760px;
  color:#fff;
  text-shadow:0 2px 18px rgba(15,28,48,.18);
}

.pc-hero h1 {
    margin: 0;
    max-width: 760px;
    font-size: clamp(49px, 2.45vw, 91px);
    line-height: 1.02;
    letter-spacing: 0;
    font-weight: 300;
}

.pc-hero__copy p:not(.pc-kicker){
  max-width:620px;
  margin:22px 0 0;
  color:rgba(255,255,255,.86);
  font-size:clamp(15px, 1.05vw, 18px);
  line-height:1.62;
  font-weight:400;
}

.pc-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:28px;
}

.pc-btn{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 18px;
  border-radius:2px;
  border:1px solid transparent;
  font-size:11px;
  font-weight:700;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.pc-btn--lime{
  background:var(--pc-lime);
  color:#11130f;
}

.pc-btn--glass{
  color:#fff;
  background:rgba(18,31,50,.22);
  border-color:rgba(255,255,255,.28);
  backdrop-filter:blur(14px);
}

.pc-btn--dark{
  color:#fff;
  background:#11130f;
}

.pc-hero__panel{
  align-self:end;
  transform:translateY(-133px);
  color:#fff;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(14px);
  padding:10px;
  border-radius:4px;
  box-shadow:0 24px 60px rgba(7,16,28,.22);
  max-width:520px;
}

.pc-hero__visual{
  margin:0;
}

.pc-hero__visual img{
  display:block;
  width:100%;
  aspect-ratio:1.45 / 1;
  object-fit:cover;
  border-radius:3px;
}

.pc-hero__visual figcaption{
  padding:13px 4px 3px;
}

.pc-hero__visual span{
  display:block;
  color:rgba(201,255,61,.9);
  font-size:10px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.pc-hero__visual p{
  margin:7px 0 0;
  max-width:34ch;
  color:rgba(255,255,255,.82);
  font-size:13px;
  line-height:1.45;
  font-weight:400;
}

.pc-intro{
  background:#f7f8f2;
  padding:clamp(70px, 10vw, 150px) 0;
}

.pc-intro__grid{
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:clamp(32px, 6vw, 120px);
  align-items:start;
}

.pc-intro h2,
.pc-dark h2,
.pc-showcase h2,
.pc-process h2,
.pc-split h2,
.pc-products h2,
.pc-final h2{
  margin:0;
  font-size:clamp(34px, 5.2vw, 82px);
  line-height:.99;
  letter-spacing:0;
  font-weight:500;
}

.pc-intro__text{
  display:grid;
  gap:18px;
  padding-top:34px;
}

.pc-intro__text p,
.pc-showcase__content p,
.pc-split__copy p,
.pc-final p{
  margin:0;
  color:var(--pc-muted);
  font-size:18px;
  line-height:1.65;
}

.pc-dark{
  background:#11130f;
  color:#fff;
  padding:clamp(76px, 10vw, 140px) 0;
  position:relative;
  overflow:hidden;
}

.pc-dark::after{
  content:"";
  position:absolute;
  right:4vw;
  top:54px;
  width:210px;
  height:210px;
  background:conic-gradient(from 0deg, transparent 0 10deg, var(--pc-lime) 10deg 25deg, transparent 25deg 45deg);
  opacity:.8;
  clip-path:circle(50%);
}

.pc-dark__head{
  max-width:980px;
  position:relative;
  z-index:1;
}

.pc-cardgrid{
  margin-top:62px;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:1px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.12);
  position:relative;
  z-index:1;
}

.pc-cardgrid article{
  min-height:270px;
  padding:28px;
  background:#1a1c17;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.pc-cardgrid span{
  color:var(--pc-green);
  font-weight:800;
}

.pc-cardgrid h3{
  margin:44px 0 12px;
  font-size:25px;
  line-height:1.05;
  font-weight:500;
}

.pc-cardgrid p{
  margin:0;
  color:rgba(255,255,255,.66);
  line-height:1.55;
}

.pc-showcase{
  padding:clamp(70px, 10vw, 140px) 0;
  background:#fff;
}

.pc-showcase__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(28px, 5vw, 84px);
  align-items:center;
}

.pc-showcase__image{
  min-height:620px;
  overflow:hidden;
  border-radius:4px;
}

.pc-showcase__image img,
.pc-split__image img,
.pc-product-card img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.pc-showcase__content{
  max-width:720px;
}

.pc-usecases{
  display:grid;
  gap:18px;
  margin-top:34px;
}

.pc-usecases div{
  border-top:1px solid var(--pc-line);
  padding-top:18px;
  display:grid;
  grid-template-columns:180px 1fr;
  gap:22px;
}

.pc-usecases b{
  font-size:18px;
}

.pc-usecases span{
  color:var(--pc-muted);
  line-height:1.55;
}

.pc-process{
  background:#eef1e8;
  padding:clamp(70px, 10vw, 130px) 0;
}

.pc-process__title{
  max-width:1020px;
}

.pc-steps{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
  margin-top:52px;
}

.pc-steps article{
  background:#fff;
  border:1px solid rgba(17,19,15,.08);
  border-radius:4px;
  padding:28px;
  min-height:250px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.pc-steps span{
  font-size:32px;
  line-height:1;
  font-weight:500;
}

.pc-steps p{
  margin:36px 0 0;
  color:var(--pc-muted);
  line-height:1.6;
}

.pc-split{
  background:#11130f;
  color:#fff;
  padding:0;
}

.pc-split__grid{
  min-height:720px;
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:54px;
  align-items:center;
}

.pc-split__copy{
  padding:90px 0;
}

.pc-split__copy p{
  color:rgba(255,255,255,.72);
  margin-top:24px;
}

.pc-link{
  display:inline-flex;
  margin-top:34px;
  color:var(--pc-lime);
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:13px;
}

.pc-split__image{
  height:min(68vh, 640px);
  min-height:440px;
  overflow:hidden;
  border-radius:4px;
}

.pc-products{
  background:#f7f8f2;
  padding:clamp(70px, 9vw, 130px) 0;
}

.pc-products__grid{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:clamp(30px, 6vw, 100px);
  align-items:center;
}

.pc-product-card{
  background:#fff;
  border:1px solid rgba(17,19,15,.08);
  border-radius:4px;
  overflow:hidden;
  display:grid;
  grid-template-columns:1.08fr .92fr;
  box-shadow:0 24px 70px rgba(19,24,16,.08);
}

.pc-product-card img{
  min-height:420px;
  background:#f3f4f0;
}

.pc-product-card div{
  padding:34px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.pc-product-card span{
  color:#0b61ff;
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.pc-product-card h3{
  margin:14px 0;
  font-size:34px;
  line-height:1;
  font-weight:500;
}

.pc-product-card p{
  margin:0;
  color:var(--pc-muted);
  line-height:1.6;
}

.pc-product-card a{
  margin-top:24px;
  color:#0b61ff;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:13px;
}

.pc-final{
  background:#c9ff3d;
  color:#11130f;
  padding:clamp(76px, 10vw, 140px) 0;
}

.pc-final__inner{
  max-width:1180px;
  margin:0 auto;
  text-align:center;
}

.pc-final .pc-kicker{
  color:#0b61ff;
}

.pc-final p{
  max-width:760px;
  margin:22px auto 0;
  color:rgba(17,19,15,.74);
}

.pc-final .pc-hero__actions{
  justify-content:center;
}

@media (max-width:1100px){
  .pc-hero__inner,
  .pc-intro__grid,
  .pc-showcase__grid,
  .pc-split__grid,
  .pc-products__grid{
    grid-template-columns:1fr;
  }

  .pc-hero__panel{
    max-width:560px;
    transform:none;
  }

  .pc-cardgrid,
  .pc-steps{
    grid-template-columns:1fr 1fr;
  }

  .pc-showcase__image{
    min-height:420px;
  }
}

@media (max-width:720px){
  .pc-wrap{
    width:min(1650px, calc(100% - 32px));
  }

  .pc-hero__media img{
    object-position:58% 58%;
  }



  .pc-hero,
  .pc-hero__inner{
    min-height:auto;
  }

  .pc-hero{
    padding:0;
  }

  .pc-hero__inner{
    padding:104px 0 46px;
    gap:26px;
    align-items:start;
  }

  .pc-hero h1 {
    font-size:clamp(39px, 11vw, 58px);
    line-height:1.04;
  }

  .pc-hero__copy p:not(.pc-kicker){
    font-size:15px;
    line-height:1.55;
  }

  .pc-hero__panel{
    max-width:none;
    width:100%;
  }

  .pc-hero__visual img{
    aspect-ratio:1.35 / 1;
  }

  .pc-btn{
    width:100%;
  }

  .pc-cardgrid,
  .pc-steps,
  .pc-product-card{
    grid-template-columns:1fr;
  }

  .pc-cardgrid article{
    min-height:220px;
    padding:24px;
  }

  .pc-usecases div{
    grid-template-columns:1fr;
    gap:8px;
  }

  .pc-split__grid{
    min-height:auto;
  }

  .pc-split__image{
    min-height:320px;
    height:360px;
    margin-bottom:32px;
  }

  .pc-showcase__image{
    min-height:300px;
  }

  .pc-steps article,
  .pc-product-card div{
    padding:24px;
  }

  .pc-product-card h3{
    font-size:30px;
  }

  .pc-product-card img{
    min-height:290px;
  }
}

@media (max-width:420px){
  .pc-wrap{
    width:min(1650px, calc(100% - 24px));
  }

  .pc-hero__inner{
    padding:96px 0 40px;
  }

  .pc-hero h1{
    font-size:clamp(34px, 10vw, 42px);
  }

  .pc-intro,
  .pc-showcase,
  .pc-process,
  .pc-products,
  .pc-final{
    padding-block:58px;
  }

  .pc-cardgrid,
  .pc-steps{
    margin-top:34px;
  }

  .pc-showcase__image,
  .pc-split__image{
    min-height:260px;
    height:300px;
  }
}

.featured-products .price-note{
  display:none;
}

.featured-products .badge.bestseller1,
.featured-products .badge.tag1{
  display:none;
}

.featured-products .row-nav{
  width:44px;
  height:44px;
  border-radius:3px;
  background:#ffffff;
  color:#101828;
  box-shadow:0 14px 34px rgba(15,23,42,.14);
}

@media (max-width:900px){
  .featured-products .product-row .card{
    flex:0 0 calc((100% - 18px)/2);
  }
}

@media (max-width:620px){
  .featured-products{
    padding:48px 3px;
  }

  .featured-products .section-head h2{
    font-size:26px;
  }

  .featured-products .product-row{
    gap:16px;
  }

  .featured-products .product-row-actions{
    padding-right:10px;
  }

  .featured-products .product-row .card{
    flex:0 0 min(88%, 360px);
  }

  .featured-products .card{
    --card-cut:28px;
  }

  .featured-products .card .cover{
    height:162px;
  }

  .featured-products .card .cover img{
    width:100%;
    height:100%;
    object-position:center bottom;
  }

  .featured-products .card .body{
    padding:13px 14px 15px;
    gap:8px;
  }

  .featured-products .title{
    font-size:20px;
    letter-spacing:-.02em;
  }

  .featured-products .brand{
    font-size:11px;
    letter-spacing:.18em;
  }

  .featured-products .price{
    font-size:22px;
  }

  .featured-products .meta{
    gap:7px;
  }

  .featured-products .pill{
    min-height:31px;
    padding:0 10px;
    font-size:12px;
  }

  .featured-products .pill svg{
    width:15px;
    height:15px;
  }

  .featured-products .price-row{
    align-items:flex-end;
    gap:12px;
  }

  .featured-products .price-wrap{
    max-width:calc(100% - 132px);
  }

  .featured-products .spec{
    max-width:100%;
    font-size:11px;
    line-height:1.25;
  }

  .featured-products .btn-shop{
    height:40px;
    min-width:118px;
    padding:0 13px;
    font-size:11px;
  }

  .featured-products .stock-badge{
    top:9px;
    right:calc(var(--card-cut) + 6px);
    width:86px;
    min-height:27px;
    padding:0 8px;
    font-size:10px;
  }

  .featured-products .featured-bestseller-badge{
    top:39px;
    right:calc(var(--card-cut) + 6px);
    width:86px;
    min-height:25px;
    padding:0 7px 0 5px;
    font-size:10px;
  }

  .featured-products .featured-bestseller-lottie{
    width:20px;
    height:20px;
  }

  .featured-products.bundle-products .stock-badge,
  .featured-products.bundle-products .featured-bestseller-badge{
    right:calc(var(--card-cut) + 7px);
    width:108px;
  }

  .featured-products.bundle-products .featured-bestseller-badge{
    top:40px;
  }

  .featured-products.bundle-products .bundle-price-line{
    gap:7px;
  }

  .featured-products.bundle-products .bundle-old-price{
    font-size:12px;
  }

  .featured-products.bundle-products .price{
    font-size:21px;
  }
}

@media (max-width:420px){
  .featured-products .product-row .card{
    flex-basis:min(92%, 340px);
  }

  .featured-products .price-row{
    gap:12px;
  }

  .featured-products .btn-shop{
    min-width:118px;
    padding:0 14px;
  }

  .featured-products.bundle-products .product-row .card{
    flex-basis:min(94%, 360px);
  }

  .featured-products.bundle-products .title{
    font-size:19px;
  }

  .featured-products.bundle-products .price-row{
    align-items:stretch;
    flex-direction:column;
    gap:11px;
  }

  .featured-products.bundle-products .price-wrap{
    max-width:100%;
  }

  .featured-products.bundle-products .bundle-price-line{
    flex-direction:column;
    align-items:flex-start;
    gap:5px;
  }

  .featured-products.bundle-products .bundle-old-price{
    font-size:13px;
  }

  .featured-products.bundle-products .price{
    font-size:24px;
  }

  .featured-products.bundle-products .btn-shop{
    width:100%;
  }
}

@media (max-width:380px){
  .featured-products .product-row .card{
    flex-basis:94%;
  }

  .featured-products .card .cover{
    height:154px;
  }

  .featured-products .price-row{
    align-items:stretch;
    flex-direction:column;
    gap:10px;
  }

  .featured-products .price-wrap{
    max-width:100%;
  }

  .featured-products .btn-shop{
    width:100%;
  }

  .featured-products.bundle-products .stock-badge,
  .featured-products.bundle-products .featured-bestseller-badge{
    right:calc(var(--card-cut) + 5px);
    width:102px;
    font-size:9px;
  }

  .featured-products.bundle-products .featured-bestseller-lottie{
    width:18px;
    height:18px;
  }

  .featured-products.bundle-products .title{
    font-size:18px;
  }

  .featured-products.bundle-products .pill{
    font-size:11px;
    padding:0 9px;
  }
}

/* ================================
   HERO BITKASTL STYLE OVERRIDE
   ================================ */
.hero__slide--first{
  background-position:center center;
}
.hero__slide::before{
  background:none !important;
}
.hero__slide::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(
      to top,
      rgba(0,0,0,.82) 0%,
      rgba(0,0,0,.68) 24%,
      rgba(0,0,0,.28) 52%,
      rgba(0,0,0,0) 76%
    );
  pointer-events:none;
}
.hero__content{
  bottom:12% !important;
}
.hero__content .inner.hero-bitkastl-grid{
  max-width:1712px;
  padding:0 28px;
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.75fr);
  align-items:end;
  gap:42px;
}
.hero-bitkastl-main h1,
.hero-bitkastl-main h2,
.hero-bitkastl-main h3{
  margin:0;
  font-family:inherit;
  font-size:clamp(44px,4.2vw,62px);
  font-weight:400;
  line-height:1.02;
  letter-spacing:-.012em;
  max-width:21ch;
}
.hero-bitkastl-side{
  max-width:520px;
}
.hero-bitkastl-side p{
  margin:0;
  font-family:inherit;
  font-size:clamp(16px,1.8vw,24px);
  line-height:1.34;
  font-weight:500;
  letter-spacing:0;
  opacity:.95;
}
.hero-bitkastl-actions{
  margin-top:16px;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.hero-btn{
  font-family:inherit;
  height:44px;
  padding:0 22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius: 2px;
  letter-spacing:.11em;
  text-transform:uppercase;
  font-weight:500;
  font-size:12px;
}
.hero-btn--ghost{
  background:transparent !important;
  border:1px solid rgba(255,255,255,.65);
  color:#fff !important;
}
.hero-btn--ghost:hover{
  background:rgba(255,255,255,.08) !important;
}

@media (max-width:980px){
  .hero__slide--first{
    background-position:58% center;
  }
  .hero__content{
    bottom:8% !important;
  }
  .hero__content .inner.hero-bitkastl-grid{
    grid-template-columns:1fr;
    gap:16px;
    max-width:92%;
    padding:0;
  }
  .hero-bitkastl-main h1,
  .hero-bitkastl-main h2,
  .hero-bitkastl-main h3{
    font-size:34px;
    font-weight:400;
    max-width:15ch;
  }
  .hero-bitkastl-side p{
    font-size:14px;
    font-weight:500;
  }
  .hero-btn{
    height:40px;
    padding:0 16px;
    font-size:11px;
  }
}

/* ================================
   MACBOOK COMPACT TUNING
   ================================ */
@media (min-width:1280px) and (max-width:1728px) and (min-height:700px){
  html{
    font-size:15px;
  }
  body{
    zoom:.92;
  }
}

* {
  box-sizing: border-box;
}



.mw-section {
  width: 100%;
  background: #ffffff;
  padding: 70px 58px 86px;
}

.mw-container {
  max-width: 1650px;
  margin: 0 auto;
}

.mw-layout {
  display: grid;
  grid-template-columns: 1.03fr 1.52fr;
  gap: 88px;
  align-items: stretch;
}

/* LEFT */
.mw-left {
  --mw-info-box-width: 530px;
  display: flex;
  flex-direction: column;
  min-height: 675px;
}

.mw-eyebrow {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 42px;
}

.mw-icon {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
}

.mw-icon svg {
  
  width: 100%;
  height: 100%;
  display: block;
}

.mw-eyebrow span {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2.6px;
  color: #39424d;
  text-transform: uppercase;
}

.mw-title {
  margin: 0;
  max-width: 566px;
  font-size: 61px;
  line-height: 0.94;
  font-weight: 400;
  letter-spacing: -2.7px;
  color: #111111;
}

.mw-text {
  margin: 28px 0 0;
  max-width: 540px;
  font-size: 24px;
  line-height: 1.45;
  font-weight: 400;
  color: #111111;
}

.mw-link {
  margin-top: 52px;
  display: inline-flex;
  align-items: center;
  gap: 16px;
  width: fit-content;
  text-decoration: none;
}

.mw-link > span:first-child {
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 2.8px;
  color: #243042;
  text-transform: uppercase;
}

.mw-link-box {
  width: 30px;
  height: 30px;
  border: 1px solid #a5a5a5;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #565656;
  flex: 0 0 30px;
  border-radius: 2px;
}

.mw-link-box svg {
  width: 14px;
  height: 14px;
  display: block;
}

.mw-ratings {
  margin-top: 33px;
  width: var(--mw-info-box-width);
  background: #ffffff;
  /* border: 1px solid #d9dee5; */
  border-radius: 2px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  /* padding: 14px 18px; */
}

.mw-rating-item {
  min-width: 0;
}

.mw-rating-top {
  display: flex;
  align-items: center;
  gap: 1px;
}

.mw-rating-score {
  color: #132235;
  font-size: 38px;
  line-height: 1;
  letter-spacing: -1.1px;
  font-weight: 400;
  min-width: 72px;
  text-align: left;
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
}

.mw-rating-stars svg {
  width: 68px;
  height: 14px;
  display: block;
}

.mw-rating-brand {
  margin-top: 6px;
  display: inline-flex;
  align-items: center;
  width: 100%;
  min-height: 30px;
  line-height: 1;
}

.mw-rating-link {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}

.mw-rating-logo {
  display: block;
  width: auto;
  max-width: 100%;
  height: 28px;
  object-fit: contain;
  object-position: left center;
}

.mw-stats {
  margin-top: auto;
  width: var(--mw-info-box-width);
  background: #000fff;
  clip-path: polygon(0 0, 91% 0, 100% 22%, 100% 100%, 0 100%);
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding: 26px 20px 22px;
  border-radius: 2px;
}

.mw-stat {
  padding: 0 18px 0 0;
}

.mw-stat + .mw-stat {
  padding-left: 24px;
}

.mw-stat-top {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin-bottom: 14px;
}

.mw-stat-number {
  font-size: 58px;
  line-height: 1;
  font-weight: 300;
  letter-spacing: -2px;
  color: #f7f7f2;
}

.mw-stat-unit {
  font-size: 24px;
  line-height: 1;
  font-weight: 500;
  color: #f7f7f2;
}

.mw-stat-line {
  width: 100%;
  height: 1px;
  background: rgba(247, 247, 242, 0.18);
  margin-bottom: 14px;
  
}

.mw-stat-label {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 2.4px;
  color: #f7f7f2;
  text-transform: uppercase;
  line-height: 1.2;
}

/* RIGHT */
.mw-right {
  display: grid;
  grid-template-columns: 1fr 0.96fr;
  gap: 18px;
  min-height: 675px;
}

.mw-big-image,
.mw-small-image {
  overflow: hidden;
  background: #ddd;
}

.mw-big-image img,
.mw-small-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 2px;
}

.mw-big-image {
  height: 675px;
}

.mw-right-stack {
  display: grid;
  grid-template-rows: 308px 349px;
  gap: 18px;
}

/* RESPONSIVE */
@media (max-width: 1200px) {
  .mw-layout {
    grid-template-columns: 1fr;
    gap: 50px;
  }

  .mw-left {
    min-height: auto;
  }

  .mw-stats {
    margin-top: 50px;
  }

  .mw-ratings {
    width: 100%;
    max-width: 680px;
  }

  /* Grid bleibt erhalten */
  .mw-right {
    grid-template-columns: 1fr 0.96fr;
    gap: 14px;
    min-height: auto;
  }

  .mw-right-stack {
    grid-template-rows: 1fr 1fr;
    gap: 14px;
  }

  .mw-big-image {
    height: 420px;
  }

  .mw-small-image:first-child,
  .mw-small-image:last-child {
    height: 203px;
  }
}

@media (max-width: 768px) {
  .mw-section {
    padding: 34px 20px 50px;
  }

  .mw-title {
    font-size: 42px;
    line-height: 1;
    letter-spacing: -1.6px;
  }

  .mw-text {
    font-size: 19px;
  }

  .mw-stats {
    width: 100%;
    grid-template-columns: 1fr;
    clip-path: polygon(0 0, 85% 0, 100% 22%, 100% 100%, 0 100%);
    gap: 16px;
    padding: 20px 16px 18px;
    margin-top: 12px;
  }

  .mw-ratings {
    width: 100%;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    padding: 8px 2px 10px;
  }

  .mw-rating-top {
    gap: 2px;
  }

  .mw-rating-score {
    font-size: 24px;
    min-width: auto;
  }

  .mw-rating-logo {
    height: 16px;
  }

  .mw-rating-brand {
    margin-top: 4px;
    min-height: 20px;
  }

  .mw-rating-stars svg {
    width: 52px;
    height: 11px;
  }

  .mw-stat {
    padding: 0;
  }

  .mw-stat-number {
    font-size: 50px;
    letter-spacing: -1.2px;
  }

  .mw-stat-label {
    font-size: 11px;
    letter-spacing: 1.8px;
  }

  .mw-stat + .mw-stat {
    padding-left: 0;
  }

  /* Auch auf Mobile Grid behalten */
  .mw-right {
    grid-template-columns: 1fr 0.96fr;
    gap: 10px;
  }

  .mw-right-stack {
    grid-template-rows: 1fr 1fr;
    gap: 10px;
  }

  .mw-big-image {
    height: 320px;
  }

  .mw-small-image:first-child,
  .mw-small-image:last-child {
    height: 155px;
  }
}


/* ===== Footer Variant: Caelor Card ===== */
.mf--caelor{
  background:#0e0f0d;
  color:#e9edf4;
  padding:0;
}

.mf--caelor .mf__frame{
  background:#0e0f0d;
  border:none;
  border-radius:0;
  padding:56px 0px 18px;
  max-width:none;
  margin:0 auto;
}

.mf--caelor .mf__grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr)) minmax(220px,280px);
  gap:40px;
  align-items:start;
}

.mf--caelor .mf__colttl{
  color:#6f7787;
  font-size:14px;
  text-transform:uppercase;
  letter-spacing:.04em;
  margin:0 0 16px;
  font-weight:700;
}

.mf--caelor .mf__list{
  list-style:none;
  margin:0;
  padding:10px 0 0 14px;
  display:grid;
  gap:8px;
  border-left:1px solid #202530;
}

.mf--caelor .mf__list a{
  color:#e9edf4;
  text-decoration:none;
  font-size:19px;
  line-height:1.25;
  font-weight:400;
  display:inline-block;
  position:relative;
  padding-bottom:2px;
}

.mf--caelor .mf__list a:hover{
  color:#ffffff;
  opacity:.9;
}

.mf--caelor .mf__list a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-2px;
  width:100%;
  height:1px;
  background:#ffffff;
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .25s ease;
}

.mf--caelor .mf__list a:hover::after{
  transform:scaleX(1);
}

.mf--caelor .mf__col--company .mf__list{
  margin-bottom:20px;
  border-left:none;
  padding-left:0;
}

.mf--caelor .mf__actions{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-bottom:24px;
  margin-left:0px;
}

.mf--caelor .mf__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  border-radius:2px;
  text-decoration:none;
  text-transform:uppercase;
  font-size:13px;
  letter-spacing:.03em;
  font-weight:400;
  border:3px solid transparent;
}

.mf--caelor .mf__btn--light{
  background:#000fff;
  color:#ffffff;
  border-color:#000fff;
}

.mf--caelor .mf__btn--ghost{
  background:transparent;
  color:#e8edf6;
  border-color:#ffffff;
}

.mf--caelor .mf__policy{
  display:grid;
  gap:10px;
  border-left:none;
  padding-left:0;
  margin-left:0px;
}

.mf--caelor .mf__col--company{
  position:relative;
  padding-left:14px;
  grid-column:6;
  grid-row:1 / span 2;
  align-self:stretch;
}

.mf--caelor .mf__col--company::before{
  content:"";
  position:absolute;
  left:0;
  top:33px;
  bottom:0;
  width:1px;
  background:#202530;
}

.mf--caelor .mf__policy a{
  color:#9fa7b6;
  text-decoration:none;
  text-transform:uppercase;
  font-size:13px;
  letter-spacing:.03em;
  font-weight:500;
}

.mf--caelor .mf__policy a:hover{
  color:#ffffff;
}

.mf--caelor .mf__brandmark{
  grid-column:1 / 6;
  grid-row:2;
  margin-top:14px;
}

.mf--caelor .mf__brandmark img{
  display:block;
  width:min(92%, 1100px);
  max-width:100%;
  height:auto;
  opacity:.96;
  filter:brightness(1.05);
}

.mf--caelor .mf__bottom{
  margin-top:14px;
  padding-top:8px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
}

.mf--caelor .mf__copy{
  color:#6f7787;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.mf--caelor .mf__legal{
  display:flex;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
}

.mf--caelor .mf__legal a{
  color:#9fa7b6;
  text-decoration:none;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.03em;
  font-weight:500;
}

.mf--caelor .mf__legal a:hover{
  color:#fff;
}

@media (max-width:1200px){
  .mf--caelor .mf__grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:30px;
  }

  .mf--caelor .mf__col--company{
    grid-column:1 / -1;
    grid-row:auto;
    max-width:360px;
  }

  .mf--caelor .mf__brandmark{
    grid-column:1 / -1;
    grid-row:auto;
    margin-top:4px;
  }
}

@media (max-width:640px){
  .mf--caelor .mf__frame{
    padding:28px 20px 16px;
  }

  .mf--caelor .mf__grid{
    grid-template-columns:1fr 1fr;
    gap:24px;
  }

  .mf--caelor .mf__col--company{
    grid-column:1 / -1;
    grid-row:auto;
  }

  .mf--caelor .mf__list a{
    font-size:16px;
  }

  .mf--caelor .mf__brandmark{
    grid-column:1 / -1;
    margin-top:12px;
  }

  .mf--caelor .mf__bottom{
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
  }
}

/* USA CTA Section */
.usa-wrap {
  width: min(1650px, calc(100% - 56px));
  margin: 0 auto;
}

.usa-cta {
  background: #000fff;
  color: #fff;
  padding: 86px 0;
  position: relative;
  overflow: hidden;
}

.usa-cta::before {
  content: "";
  position: absolute;
  right: -368px;
  top: -283px;
  width: min(72vw, 940px);
  height: min(72vw, 940px);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 360 360' fill='none'%3E%3Cg stroke='rgba(255,255,255,0.92)' stroke-width='1.4' stroke-linejoin='miter'%3E%3Cpath d='M54 178 112 146 112 208 54 240Z'/%3E%3Cpath d='M120 142 178 110 178 172 120 204Z'/%3E%3Cpath d='M120 214 178 182 178 244 120 276Z'/%3E%3Cpath d='M186 114 244 146 244 268 186 236Z'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 0.2;
  pointer-events: none;
}

.usa-cta::after {
  content: "";
  position: absolute;
  width: 520px;
  height: 520px;
  right: -190px;
  top: -250px;
  background: radial-gradient(circle, rgba(255, 255, 255, .25) 0, rgba(255, 255, 255, 0) 65%);
  pointer-events: none;
}

.usa-cta-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 28px;
  align-items: center;
  position: relative;
  z-index: 1;
}

.usa-cta-copy {
  max-width: 760px;
}

.usa-cta h2 {
  margin: 0;
  font-size: clamp(30px, 3.5vw, 54px);
  line-height: 1;
  font-weight: 350;
  letter-spacing: -0.03em;
  max-width: 18ch;
}

.usa-cta-copy p {
  margin: 14px 0 0;
  font-size: 18px;
  line-height: 1.5;
  color: rgba(235, 242, 255, .9);
  max-width: 46ch;
}

.usa-cta-actions {
  margin-top: 22px;
}

.usa-cta-btn {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 22px;
  border-radius: 2px;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-weight: 600;
  font-size: 11px;
  border: 1px solid rgba(255, 255, 255, .7);
  color: #fff;
}

.usa-cta .usa-cta-btn {
  min-width: 240px;
}

.usa-trust-card {
  background: rgba(6, 12, 48, .33);
  border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 2px;
  padding: 14px;
  backdrop-filter: blur(2px);
}

.usa-trust-media {
  width: 100%;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  border-radius: 2px;
  margin-bottom: 12px;
}

.usa-trust-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.usa-trust-title {
  display: block;
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #ffffff;
  font-weight: 700;
}

.usa-trust-sub {
  display: block;
  margin-top: 6px;
  font-size: 14px;
  color: rgba(232, 240, 255, .9);
  line-height: 1.4;
}

@media (max-width: 1100px) {
  .usa-cta-grid {
    grid-template-columns: 1fr;
  }

  .usa-trust-card {
    max-width: 340px;
  }
}

@media (max-width: 900px) {
  .usa-wrap {
    width: min(1650px, calc(100% - 36px));
  }

  .usa-cta {
    padding: 72px 0;
  }
}

@media (max-width: 680px) {
  .usa-wrap {
    width: min(1650px, calc(100% - 28px));
  }

  .usa-cta {
    margin-top: 56px;
    padding: 66px 0;
  }

  .usa-cta::before {
    width: min(92vw, 620px);
    height: min(92vw, 620px);
    right: -190px;
    top: -150px;
    opacity: .24;
  }

  .usa-cta h2 {
    line-height: 1.05;
    max-width: 16ch;
  }

  .usa-cta-copy p {
    font-size: 16px;
  }

  .usa-cta .usa-cta-btn {
    min-width: 0;
    width: 100%;
  }

  .usa-trust-card {
    max-width: 280px;
    padding: 12px;
    margin-left: auto;
    margin-right: auto;
  }

  .usa-trust-media {
    aspect-ratio: 11 / 11;
    margin-bottom: 10px;
  }
}

@media (max-width: 420px) {
  .usa-wrap {
    width: min(1650px, calc(100% - 20px));
  }

  .usa-cta {
    margin-top: 48px;
    padding: 58px 0;
  }

  .usa-cta::before {
    width: min(108vw, 560px);
    height: min(108vw, 560px);
    right: -170px;
    top: -140px;
    opacity: .2;
  }

  .usa-trust-card {
    max-width: 230px;
    padding: 10px;
    margin-left: auto;
    margin-right: auto;
  }

  .usa-trust-media {
    aspect-ratio: 16 / 10;
    margin-bottom: 8px;
  }
}

.cart-total-line {
    margin-top: 8px;
    padding-top: 14px;
    border-top: 1px solid #dbe2ec;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 20px;
    font-weight: 500;
    color: #111827;
}



/* Asia locblock media grid */
.locblock__media--grid{
  padding: 0;
}

.locblock__media--grid .locblock-media-grid{
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, .75fr);
  grid-template-rows: 1fr;
  gap: 10px;
  height: 520px;
}

.locblock__media--grid .locblock-media-grid__main,
.locblock__media--grid .locblock-media-grid__side,
.locblock__media--grid .locblock-media-grid__side > img{
  min-width: 0;
  min-height: 0;
}

.locblock__media--grid .locblock-media-grid__main,
.locblock__media--grid .locblock-media-grid__side > img{
  border-radius: 2px;
  overflow: hidden;
}

.locblock__media--grid .locblock-media-grid__main > img,
.locblock__media--grid .locblock-media-grid__side > img{
  width: 100%;
  height: 100% !important;
  object-fit: cover;
  display: block;
}

.locblock__media--grid .locblock-media-grid__side{
  display: grid;
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

@media (max-width: 1024px){
  .locblock__media--grid .locblock-media-grid{
    height: 360px;
  }
}

@media (max-width: 560px){
  .locblock__media--grid .locblock-media-grid{
    grid-template-columns: 1fr;
    grid-template-rows: minmax(0, 1.6fr) minmax(0, 1fr);
    height: 240px;
  }

  .locblock__media--grid .locblock-media-grid__side{
    display: none;
  }
}
/* Mobile fix: show all 3 Asia images */
@media (max-width: 560px){
  .locblock__media--grid .locblock-media-grid{
    grid-template-columns: 1fr;
    grid-template-rows: 240px auto;
    gap: 8px;
    height: auto;
  }

  .locblock__media--grid .locblock-media-grid__side{
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 110px;
    gap: 8px;
  }
}
