  /* =========================================================
     ENFOLD / WORDPRESS
  ========================================================= */

  .content,
  .sidebar {
    padding-top: 0 !important;
  }

  .responsive .container:has(.sm-hero) {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
  }


  /* =========================================================
     GRUNDEINSTELLUNGEN
  ========================================================= */

  .sm-hero {
    --sm-header-offset: 0px;

    --sm-red: #cc0000;
    --sm-red-dark: #970000;
    --sm-red-light: #ff2424;
    --sm-orange: #ff5d29;

    --sm-black: #090909;
    --sm-cream: #fffaf2;
    --sm-text: #323232;
    --sm-muted: #6c6c6c;
    --sm-border: rgba(9, 9, 9, 0.1);

    --sm-pointer-x: 68%;
    --sm-pointer-y: 30%;

    position: relative;
    isolation: isolate;

    display: flex;
    align-items: stretch;
    flex-direction: column;

    width: 100%;
    max-width: none;
    min-width: 0;

    min-height:
      calc(100svh - var(--sm-header-offset));

    margin: 0 !important;
    padding: 0;

    overflow: hidden;

    color:
      var(--sm-black);

    background:
      radial-gradient(
        circle at 76% 38%,
        rgba(204, 0, 0, 0.075),
        transparent 28%
      ),
      linear-gradient(
        135deg,
        #ffffff 0%,
        #ffffff 48%,
        #fafafa 100%
      );

    font-family:
      "Inter Sight",
      Inter,
      -apple-system,
      BlinkMacSystemFont,
      "Segoe UI",
      Arial,
      sans-serif;
  }

  .sm-hero,
  .sm-hero *,
  .sm-hero *::before,
  .sm-hero *::after {
    box-sizing: border-box;
  }


  /* =========================================================
     INNERER INHALTSBEREICH
  ========================================================= */

  .sm-hero__container {
    position: relative;
    z-index: 5;

    display: grid;

    grid-template-columns:
      minmax(0, 1.1fr)
      minmax(480px, 0.9fr);

    align-items: center;

    gap:
      clamp(50px, 6vw, 130px);

    width: 100%;
    max-width: 1920px;
    min-width: 0;

    margin: 0 auto;

    padding:
      clamp(20px, 3vw, 30px)
      clamp(40px, 5vw, 90px)
      0;
  }


  /* =========================================================
     HINTERGRUND
  ========================================================= */

  .sm-hero__grid {
    position: absolute;
    z-index: -5;

    inset: 0;

    opacity: 0.46;
    pointer-events: none;

    background-image:
      linear-gradient(
        rgba(9, 9, 9, 0.025) 1px,
        transparent 1px
      ),
      linear-gradient(
        90deg,
        rgba(9, 9, 9, 0.025) 1px,
        transparent 1px
      );

    background-size:
      54px 54px;

    mask-image:
      linear-gradient(
        to right,
        rgba(0, 0, 0, 0.45),
        transparent 78%
      );

    -webkit-mask-image:
      linear-gradient(
        to right,
        rgba(0, 0, 0, 0.45),
        transparent 78%
      );
  }

  .sm-hero__spotlight {
    position: absolute;
    z-index: -4;

    inset: 0;

    pointer-events: none;
    opacity: 0.95;

    background:
      radial-gradient(
        620px circle at var(--sm-pointer-x) var(--sm-pointer-y),
        rgba(204, 0, 0, 0.08),
        transparent 56%
      );

    transition:
      opacity 300ms ease;
  }


  /* =========================================================
     TEXTBEREICH
  ========================================================= */

  .sm-hero__content {
    position: relative;
    z-index: 10;

    width: 100%;
    max-width: 1020px;
    min-width: 0;
  }

  .sm-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    flex-wrap: nowrap;

    gap:
      8px 11px;

    width: max-content;
    max-width: none;

    margin:
      0
      0
      clamp(20px, 2.4vw, 34px);

    padding:
      9px 14px;

    border:
      1px solid rgba(204, 0, 0, 0.16);

    border-radius:
      999px;

    color:
      var(--sm-black);

    background:
      rgba(255, 255, 255, 0.82);

    box-shadow:
      0 12px 35px rgba(9, 9, 9, 0.045);

    backdrop-filter:
      blur(12px);

    -webkit-backdrop-filter:
      blur(12px);

    font-size: 12px;
    font-weight: 750;
    line-height: 1.3;
    letter-spacing: 0.025em;
    text-transform: uppercase;

    white-space: nowrap;
  }

  .sm-hero__eyebrow > span {
    white-space: nowrap;
  }

  .sm-hero__eyebrow-dot {
    position: relative;

    display: inline-block;
    flex: 0 0 auto;

    width: 8px;
    height: 8px;

    border-radius: 50%;

    background:
      var(--sm-red);

    box-shadow:
      0 0 0 5px rgba(204, 0, 0, 0.1);
  }

  .sm-hero__eyebrow-dot::after {
    content: "";

    position: absolute;

    inset: -5px;

    border:
      1px solid rgba(204, 0, 0, 0.25);

    border-radius:
      inherit;

    animation:
      sm-hero-pulse
      2.2s
      ease-out
      infinite;
  }

  .sm-hero__eyebrow-countries {
    color:
      var(--sm-red);
  }

  .sm-hero .sm-hero__title {
    width: 100%;
    max-width: 1050px;

    margin:
      0
      0
      clamp(46px, 4.5vw, 70px) !important;

    color:
      var(--sm-black);

    font-size:
      clamp(40px, 4vw, 75px) !important;

    font-weight: 900;
    line-height: 1.1;
    letter-spacing: -0.058em;

    text-wrap: balance;
  }

  .sm-hero__title-highlight {
    position: relative;

    display: inline-block;

    color:
      var(--sm-red);
  }

  .sm-hero__title-highlight::after {
    content: "";

    position: absolute;

    right: 1%;
    bottom: -0.04em;
    left: 1%;

    height: 0.055em;
    min-height: 3px;

    border-radius:
      999px;

    opacity: 0.2;

    transform:
      scaleX(0);

    transform-origin:
      left center;

    background:
      var(--sm-red);

    animation:
      sm-hero-line-in
      850ms
      500ms
      ease
      forwards;
  }

  .sm-hero__text {
    width: 100%;
    max-width: 820px;

    margin: 0;

    color:
      var(--sm-text);

    font-size:
      clamp(17px, 1.3vw, 21px);

    font-weight: 430;
    line-height: 1.65;
    letter-spacing: -0.012em;
  }

  .sm-hero__text strong {
    color:
      var(--sm-black);

    font-weight: 750;
  }


  /* =========================================================
     BUTTONS
  ========================================================= */

  .sm-hero__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 13px;

    margin-top:
      clamp(28px, 3.2vw, 42px);
  }

  .sm-hero__button {
    position: relative;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 13px;

    min-height: 56px;

    padding:
      15px 23px;

    overflow: hidden;

    border:
      1px solid transparent;

    border-radius:
      12px;

    text-decoration: none;

    font-size: 15px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;

    transition:
      transform 220ms ease,
      box-shadow 220ms ease,
      border-color 220ms ease,
      color 220ms ease,
      background-color 220ms ease;
  }

  .sm-hero__button svg {
    width: 19px;
    height: 19px;

    fill: none;
    stroke: currentColor;

    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;

    transition:
      transform 220ms ease;
  }

  .sm-hero a.sm-hero__button--primary,
  .sm-hero a.sm-hero__button--primary:link,
  .sm-hero a.sm-hero__button--primary:visited,
  .sm-hero a.sm-hero__button--primary:hover,
  .sm-hero a.sm-hero__button--primary:focus,
  .sm-hero a.sm-hero__button--primary:active {
    color: #ffffff !important;
  }

  .sm-hero a.sm-hero__button--primary span,
  .sm-hero a.sm-hero__button--primary svg {
    color: #ffffff !important;
    stroke: currentColor;
  }

  .sm-hero__button--primary {
    border-color:
      var(--sm-red);

    background:
      linear-gradient(
        135deg,
        var(--sm-red-light) 0%,
        var(--sm-red) 44%,
        var(--sm-red-dark) 100%
      );

    box-shadow:
      0 16px 34px rgba(204, 0, 0, 0.22),
      inset 0 1px 0 rgba(255, 255, 255, 0.2);
  }

  .sm-hero__button--primary::before {
    content: "";

    position: absolute;

    top: -70%;
    left: -45%;

    width: 45%;
    height: 240%;

    pointer-events: none;

    transform:
      rotate(24deg);

    background:
      linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.34),
        transparent
      );

    transition:
      left 600ms ease;
  }

  .sm-hero__button--primary:hover::before {
    left: 125%;
  }

  .sm-hero__button--primary:hover {
    transform:
      translateY(-3px);

    box-shadow:
      0 21px 42px rgba(204, 0, 0, 0.28),
      inset 0 1px 0 rgba(255, 255, 255, 0.2);
  }

  .sm-hero__button--primary:hover svg {
    transform:
      translateX(4px);
  }

  .sm-hero a.sm-hero__button--secondary,
  .sm-hero a.sm-hero__button--secondary:link,
  .sm-hero a.sm-hero__button--secondary:visited {
    color:
      var(--sm-black);
  }

  .sm-hero__button--secondary {
    border-color:
      rgba(204, 0, 0, 0.3);

    background:
      rgba(255, 255, 255, 0.8);

    box-shadow:
      0 12px 28px rgba(9, 9, 9, 0.055);

    backdrop-filter:
      blur(12px);

    -webkit-backdrop-filter:
      blur(12px);
  }

  .sm-hero a.sm-hero__button--secondary:hover,
  .sm-hero a.sm-hero__button--secondary:focus {
    color:
      var(--sm-red);
  }

  .sm-hero__button--secondary:hover {
    border-color:
      rgba(204, 0, 0, 0.42);

    transform:
      translateY(-3px);

    background:
      #ffffff;

    box-shadow:
      0 18px 34px rgba(9, 9, 9, 0.09);
  }

  .sm-hero__button:focus-visible {
    outline:
      3px solid rgba(255, 93, 41, 0.4);

    outline-offset:
      4px;
  }

  .sm-hero__action-note {
    display: block;

    margin:
      42px
      0
      0 !important;

    color:
      var(--sm-muted);

    font-size: 12px;
    font-weight: 600;
    line-height: 1.5;
  }


  /* =========================================================
     USP-LEISTE
  ========================================================= */

  .sm-hero__facts {
    position: relative;
    z-index: 4;

    width: 100%;
    max-width: none;

    margin-top:
      clamp(42px, 4.8vw, 68px);

    overflow: hidden;

    border-top:
      1px solid rgba(255, 255, 255, 0.12);

    border-bottom:
      1px solid rgba(255, 255, 255, 0.12);

    background:
      linear-gradient(
        135deg,
        rgba(255, 93, 41, 0.12) 0%,
        transparent 24%,
        transparent 72%,
        rgba(255, 93, 41, 0.08) 100%
      ),
      repeating-linear-gradient(
        135deg,
        rgba(255, 255, 255, 0.055) 0,
        rgba(255, 255, 255, 0.055) 1px,
        transparent 1px,
        transparent 72px
      ),
      #050605;

    box-shadow:
      0 34px 90px rgba(0, 0, 0, 0.28),
      inset 0 1px 0 rgba(255, 255, 255, 0.08),
      inset 0 -1px 0 rgba(255, 93, 41, 0.14);
  }

  .sm-hero__facts::before {
    content: "";

    position: absolute;
    z-index: 0;

    inset: 0;

    background:
      radial-gradient(
        circle at 18% 18%,
        rgba(255, 93, 41, 0.16),
        transparent 26%
      ),
      radial-gradient(
        circle at 82% 72%,
        rgba(204, 0, 0, 0.16),
        transparent 28%
      );

    opacity: 0.9;
    pointer-events: none;
  }

  .sm-hero__facts-inner {
    position: relative;
    z-index: 1;

    display: grid;

    grid-template-columns:
      repeat(4, minmax(0, 1fr));

    width: 100%;
    max-width: 1920px;

    margin: 0 auto;

    padding:
      clamp(36px, 4.7vw, 70px)
      clamp(40px, 5vw, 90px)
      clamp(30px, 4vw, 58px);
  }

  .sm-hero__fact {
    position: relative;

    display: flex;
    flex-direction: column;
    justify-content: flex-start;

    gap:
      clamp(8px, 1vw, 13px);

    min-width: 0;

    min-height:
      clamp(150px, 13vw, 214px);

    padding:
      0
      clamp(20px, 3vw, 44px);
  }

  .sm-hero__fact:first-child {
    padding-left: 0;
  }

  .sm-hero__fact:last-child {
    padding-right: 0;
  }

  .sm-hero__fact + .sm-hero__fact {
    border-left:
      1px solid rgba(255, 255, 255, 0.13);
  }

  .sm-hero__fact strong {
    display: block;

    color:
      var(--sm-cream);

    font-size:
      clamp(58px, 6.4vw, 118px);

    font-weight: 780;
    line-height: 0.82;
    letter-spacing: -0.07em;
  }

  .sm-hero__fact-accent {
    color:
      var(--sm-orange);
  }

  .sm-hero__fact-subline {
    display: block;

    min-height: 1.35em;

    color:
      rgba(255, 250, 242, 0.66);

    font-size:
      clamp(22px, 1.75vw, 36px);

    font-weight: 430;
    line-height: 1.05;
    letter-spacing: -0.04em;
  }

  .sm-hero__fact-title {
    display: block;

    margin-top:
      clamp(12px, 2vw, 28px);

    color:
      #ffffff;

    font-size:
      clamp(14px, 1.05vw, 18px);

    font-weight: 780;
    line-height: 1.25;
    letter-spacing: -0.018em;
  }

  .sm-hero__fact-meta {
    display: block;

    color:
      rgba(255, 250, 242, 0.56);

    font-size:
      clamp(9px, 0.72vw, 11px);

    font-weight: 650;
    line-height: 1.25;
    letter-spacing: 0.14em;
    text-transform: uppercase;
  }


  /* =========================================================
     VISUELLE SEITE
  ========================================================= */

  .sm-hero__visual {
    position: relative;
    z-index: 2;

    width: 100%;
    max-width: 680px;

    aspect-ratio:
      1 / 1;

    justify-self:
      center;
  }

  .sm-hero__visual-label {
    position: absolute;
    z-index: 8;

    top: 2%;
    left: 50%;

    display: inline-flex;
    align-items: center;

    gap: 8px;

    padding:
      8px 12px;

    border:
      1px solid rgba(9, 9, 9, 0.08);

    border-radius:
      999px;

    transform:
      translateX(-50%);

    color:
      var(--sm-muted);

    background:
      rgba(255, 255, 255, 0.82);

    box-shadow:
      0 12px 28px rgba(9, 9, 9, 0.05);

    backdrop-filter:
      blur(14px);

    -webkit-backdrop-filter:
      blur(14px);

    white-space: nowrap;

    font-size: 10px;
    font-weight: 750;
    line-height: 1.2;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .sm-hero__visual-label-dot {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background:
      var(--sm-orange);

    box-shadow:
      0 0 12px rgba(255, 93, 41, 0.7);
  }


  /* =========================================================
     WELTKUGEL
  ========================================================= */

  .sm-globe-stage {
    --sm-tilt-x: 0deg;
    --sm-tilt-y: 0deg;

    position: absolute;

    top: 50%;
    left: 50%;

    width: 92%;
    height: 92%;

    border-radius: 50%;

    transform:
      translate(-50%, -50%)
      perspective(1000px)
      rotateX(var(--sm-tilt-x))
      rotateY(var(--sm-tilt-y));

    transform-style:
      preserve-3d;

    transition:
      transform 180ms ease-out;
  }

  .sm-globe-stage::before {
    content: "";

    position: absolute;
    z-index: -4;

    inset: 15%;

    border-radius: 50%;

    background:
      radial-gradient(
        circle,
        rgba(204, 0, 0, 0.13),
        rgba(204, 0, 0, 0.045) 42%,
        transparent 72%
      );

    filter:
      blur(24px);

    animation:
      sm-globe-breathe
      4.5s
      ease-in-out
      infinite;
  }

  .sm-globe-stage__canvas {
    position: absolute;
    z-index: 4;

    inset: 0;

    display: block;

    width: 100%;
    height: 100%;
  }

  .sm-globe-stage__glow {
    position: absolute;
    z-index: 1;

    top: 50%;
    left: 50%;

    width: 64%;
    height: 64%;

    border:
      1px solid rgba(204, 0, 0, 0.15);

    border-radius:
      50%;

    transform:
      translate(-50%, -50%);

    background:
      radial-gradient(
        circle at 35% 30%,
        rgba(255, 255, 255, 0.95),
        rgba(255, 255, 255, 0.2) 34%,
        rgba(204, 0, 0, 0.06) 74%,
        transparent 100%
      );

    box-shadow:
      inset -26px -22px 55px rgba(204, 0, 0, 0.05),
      0 30px 80px rgba(9, 9, 9, 0.07);
  }

  .sm-globe-stage__ring {
    position: absolute;
    z-index: 2;

    top: 50%;
    left: 50%;

    border:
      1px solid rgba(204, 0, 0, 0.12);

    border-radius:
      50%;

    pointer-events: none;
  }

  .sm-globe-stage__ring::before {
    content: "";

    position: absolute;

    width: 7px;
    height: 7px;

    border:
      2px solid #ffffff;

    border-radius:
      50%;

    background:
      var(--sm-red);

    box-shadow:
      0 0 0 4px rgba(204, 0, 0, 0.12),
      0 0 18px rgba(204, 0, 0, 0.5);
  }

  .sm-globe-stage__ring--one {
    width: 78%;
    height: 45%;

    transform:
      translate(-50%, -50%)
      rotate(-21deg);

    animation:
      sm-ring-one
      13s
      linear
      infinite;
  }

  .sm-globe-stage__ring--one::before {
    top: 10%;
    left: 16%;
  }

  .sm-globe-stage__ring--two {
    width: 86%;
    height: 50%;

    transform:
      translate(-50%, -50%)
      rotate(58deg);

    animation:
      sm-ring-two
      17s
      linear
      infinite
      reverse;
  }

  .sm-globe-stage__ring--two::before {
    right: 12%;
    bottom: 17%;
  }

  .sm-globe-stage__ring--three {
    width: 75%;
    height: 75%;

    border-color:
      rgba(9, 9, 9, 0.06);

    transform:
      translate(-50%, -50%)
      rotateX(69deg);

    animation:
      sm-ring-three
      22s
      linear
      infinite;
  }

  .sm-globe-stage__ring--three::before {
    top: 46%;
    right: -3px;

    background:
      var(--sm-orange);

    box-shadow:
      0 0 0 4px rgba(255, 93, 41, 0.12),
      0 0 18px rgba(255, 93, 41, 0.48);
  }


  /* =========================================================
     LOGO
  ========================================================= */

  .sm-globe-stage__logo {
    position: absolute;
    z-index: 7;

    top: 68%;
    left: 55%;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 178px;
    min-height: 82px;

    padding:
      14px 18px;

    border:
      1px solid rgba(204, 0, 0, 0.14);

    border-radius:
      18px;

    transform:
      translate(-50%, -50%);

    background:
      rgba(255, 255, 255, 0.9);

    box-shadow:
      0 22px 55px rgba(9, 9, 9, 0.12),
      inset 0 1px 0 rgba(255, 255, 255, 0.95);

    backdrop-filter:
      blur(14px);

    -webkit-backdrop-filter:
      blur(14px);

    pointer-events: none;
  }

  .sm-globe-stage__logo::before {
    content: "";

    position: absolute;
    z-index: -1;

    inset: -1px;

    border-radius:
      inherit;

    background:
      linear-gradient(
        135deg,
        rgba(255, 93, 41, 0.16),
        transparent 45%,
        rgba(204, 0, 0, 0.1)
      );

    opacity: 0.8;
  }

  .sm-globe-stage__logo img {
    display: block;

    width: 100%;
    max-width: 142px;
    height: auto;

    object-fit:
      contain;
  }


  /* =========================================================
     SCHWEBENDE KARTEN
  ========================================================= */

  .sm-hero__floating-card {
    position: absolute;
    z-index: 12;

    display: flex;
    align-items: center;

    gap: 11px;

    min-width: 186px;

    padding:
      12px 14px;

    border:
      1px solid rgba(9, 9, 9, 0.085);

    border-radius:
      14px;

    background:
      rgba(255, 255, 255, 0.84);

    box-shadow:
      0 20px 48px rgba(9, 9, 9, 0.085),
      inset 0 1px 0 rgba(255, 255, 255, 0.88);

    backdrop-filter:
      blur(16px);

    -webkit-backdrop-filter:
      blur(16px);
  }

  .sm-hero__floating-card > span:last-child {
    display: flex;
    flex-direction: column;

    gap: 2px;
  }

  .sm-hero__floating-card small {
    color:
      var(--sm-muted);

    font-size: 9px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.07em;
    text-transform: uppercase;
  }

  .sm-hero__floating-card strong {
    color:
      var(--sm-black);

    font-size: 12px;
    font-weight: 800;
    line-height: 1.25;
  }

  .sm-hero__floating-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 auto;

    width: 34px;
    height: 34px;

    border-radius:
      10px;

    color:
      var(--sm-red);

    background:
      rgba(204, 0, 0, 0.075);
  }

  .sm-hero__floating-icon svg {
    width: 18px;
    height: 18px;

    fill: none;
    stroke: currentColor;

    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .sm-hero__floating-card--seo {
    top: 16%;
    left: -3%;

    animation:
      sm-float-card
      5.8s
      ease-in-out
      infinite;
  }

  .sm-hero__floating-card--web {
    top: 42%;
    right: -4%;

    animation:
      sm-float-card
      6.6s
      0.7s
      ease-in-out
      infinite;
  }

  .sm-hero__floating-card--leads {
    bottom: 9%;
    left: 4%;

    animation:
      sm-float-card
      6.2s
      1.25s
      ease-in-out
      infinite;
  }


  /* =========================================================
     UNTERE LINIE
  ========================================================= */

  .sm-hero__bottom-line {
    position: absolute;

    right: 0;
    bottom: 0;
    left: 0;

    height: 1px;

    overflow: hidden;

    background:
      rgba(9, 9, 9, 0.07);
  }

  .sm-hero__bottom-line span {
    display: block;

    width: 22%;
    height: 100%;

    background:
      linear-gradient(
        90deg,
        transparent,
        var(--sm-red),
        transparent
      );

    animation:
      sm-bottom-line
      7s
      ease-in-out
      infinite;
  }


  /* =========================================================
     ANIMATIONEN
  ========================================================= */

  @keyframes sm-hero-pulse {
    0% {
      opacity: 0.7;
      transform: scale(0.7);
    }

    75%,
    100% {
      opacity: 0;
      transform: scale(1.8);
    }
  }

  @keyframes sm-hero-line-in {
    to {
      transform: scaleX(1);
    }
  }

  @keyframes sm-globe-breathe {
    0%,
    100% {
      opacity: 0.75;
      transform: scale(0.96);
    }

    50% {
      opacity: 1;
      transform: scale(1.05);
    }
  }

  @keyframes sm-ring-one {
    from {
      transform:
        translate(-50%, -50%)
        rotate(-21deg);
    }

    to {
      transform:
        translate(-50%, -50%)
        rotate(339deg);
    }
  }

  @keyframes sm-ring-two {
    from {
      transform:
        translate(-50%, -50%)
        rotate(58deg);
    }

    to {
      transform:
        translate(-50%, -50%)
        rotate(418deg);
    }
  }

  @keyframes sm-ring-three {
    from {
      transform:
        translate(-50%, -50%)
        rotateX(69deg)
        rotateZ(0deg);
    }

    to {
      transform:
        translate(-50%, -50%)
        rotateX(69deg)
        rotateZ(360deg);
    }
  }

  @keyframes sm-float-card {
    0%,
    100% {
      transform:
        translate3d(0, 0, 0);
    }

    50% {
      transform:
        translate3d(0, -10px, 0);
    }
  }

  @keyframes sm-bottom-line {
    0% {
      transform:
        translateX(-110%);
    }

    50%,
    100% {
      transform:
        translateX(500%);
    }
  }


  /* =========================================================
     MITTLERE DESKTOPS
  ========================================================= */

  @media (max-width: 1280px) and (min-width: 1101px) {
    .sm-hero__container {
      grid-template-columns:
        minmax(0, 1.05fr)
        minmax(400px, 0.8fr);

      gap: 42px;
    }

    .sm-hero .sm-hero__title {
      font-size:
        clamp(49px, 6.2vw, 78px) !important;
    }

    .sm-hero__visual {
      max-width: 560px;

      margin-top:
        clamp(72px, 6vw, 108px) !important;
    }

    .sm-hero__floating-card {
      transform:
        scale(0.92);
    }

    .sm-hero__floating-card--seo {
      left: -7%;
    }

    .sm-hero__floating-card--web {
      right: -8%;
    }

    .sm-globe-stage__logo {
      width: 164px;
      min-height: 76px;
    }

    .sm-globe-stage__logo img {
      max-width: 130px;
    }
  }


  /* =========================================================
     DESKTOP-AUSRICHTUNG
  ========================================================= */

  @media (min-width: 1101px) {
    .sm-hero__container {
      align-items:
        start !important;
    }

    .sm-hero__visual {
      align-self:
        start !important;

      margin-top:
        clamp(30px, 4vw, 50px) !important;
    }
  }


  /* =========================================================
     TABLET HOCHKANT UND KLEINERE TABLETS
  ========================================================= */

  @media (max-width: 1100px) {
    .responsive .container:has(.sm-hero) {
      width: 100% !important;
      max-width: none !important;

      margin: 0 !important;
      padding: 0 !important;
    }

    .sm-hero {
      display: flex;
      align-items: stretch;
      flex-direction: column;

      width: 100% !important;
      max-width: 100% !important;
      min-width: 0;

      min-height: auto;

      margin: 0 !important;
      padding: 0;

      overflow: hidden;

      background:
        radial-gradient(
          circle at 90% 42%,
          rgba(204, 0, 0, 0.07),
          transparent 34%
        ),
        #ffffff;
    }

    .sm-hero__container {
      display: block;

      width: 100%;
      max-width: 100%;
      min-width: 0;

      margin: 0;

      padding:
        clamp(58px, 8vw, 82px)
        clamp(28px, 5vw, 48px)
        0;
    }

    .sm-hero__content {
      width: 100%;
      max-width: 780px;
      min-width: 0;

      margin: 0 auto;
    }

    .sm-hero__eyebrow {
      display: flex;
      flex-wrap: wrap;

      width: fit-content;
      max-width: 100%;

      margin-bottom: 28px;

      padding:
        9px 13px;

      border-radius:
        14px;

      white-space: normal;

      font-size: 11px;
      line-height: 1.4;
    }

    .sm-hero__eyebrow > span {
      max-width: 100%;

      white-space: normal;
    }

    .sm-hero__eyebrow-countries {
      flex-basis: 100%;

      padding-left: 19px;
    }

    .sm-hero .sm-hero__title {
      width: 100%;
      max-width: 760px;

      margin:
        0
        0
        clamp(38px, 5vw, 54px) !important;

      font-size:
        clamp(48px, 7vw, 68px) !important;

      line-height: 0.98;
      letter-spacing: -0.052em;

      text-wrap: balance;
    }

    .sm-hero__text {
      width: 100%;
      max-width: 720px;

      margin: 0;

      font-size:
        clamp(17px, 2.2vw, 20px);

      line-height: 1.65;
    }

    .sm-hero__actions {
      margin-top: 34px;
    }

    .sm-hero__action-note {
      margin-top:
        38px !important;
    }

    .sm-hero__facts {
      width: 100%;
      max-width: none;

      margin-top: 42px;
    }

    .sm-hero__facts-inner {
      grid-template-columns:
        repeat(4, minmax(0, 1fr));

      width: 100%;
      max-width: 100%;

      padding:
        44px
        clamp(28px, 5vw, 48px)
        32px;
    }

    .sm-hero__fact {
      min-height: 132px;

      padding:
        0
        clamp(14px, 2.5vw, 24px);
    }

    .sm-hero__fact-title {
      margin-top: 18px;
    }

    .sm-hero__fact-subline {
      font-size:
        clamp(17px, 2.4vw, 26px);
    }

    .sm-hero__visual {
      position: absolute;
      z-index: 0;

      top: 50%;
      right: -180px;
      left: auto;

      width:
        min(64vw, 560px);

      max-width: none;

      transform:
        translateY(-50%);

      opacity: 0.1;

      pointer-events: none;
    }

    .sm-hero__visual-label,
    .sm-hero__floating-card,
    .sm-globe-stage__logo {
      display: none;
    }

    .sm-hero__grid {
      mask-image:
        linear-gradient(
          to bottom,
          rgba(0, 0, 0, 0.38),
          transparent 92%
        );

      -webkit-mask-image:
        linear-gradient(
          to bottom,
          rgba(0, 0, 0, 0.38),
          transparent 92%
        );
    }
  }


  /* =========================================================
     SMARTPHONE
  ========================================================= */

  @media (max-width: 680px) {
    .sm-hero {
      display: flex;
      align-items: stretch;
      flex-direction: column;

      width: 100% !important;
      max-width: 100% !important;
      min-width: 0;

      min-height: auto;

      margin: 0 !important;
      padding: 0;

      overflow: hidden;
    }

    .sm-hero__container {
      display: block;

      width: 100%;
      max-width: 100%;
      min-width: 0;

      margin: 0;

      padding:
        44px
        18px
        0;
    }

    .sm-hero__content {
      display: block;

      width: 100%;
      max-width: 100%;
      min-width: 0;

      margin: 0;
    }

    .sm-hero__visual {
      display: none;
    }

    .sm-hero__eyebrow {
      display: grid;

      grid-template-columns:
        auto
        minmax(0, 1fr);

      align-items: center;

      width: 100%;
      max-width: 100%;

      gap:
        7px 10px;

      margin-bottom: 26px;

      padding:
        10px 12px;

      border-radius:
        12px;

      white-space: normal;

      font-size: 10px;
      line-height: 1.4;
    }

    .sm-hero__eyebrow > span {
      min-width: 0;
      max-width: 100%;

      white-space: normal;
    }

    .sm-hero__eyebrow-dot {
      grid-column: 1;
      grid-row: 1;
    }

    .sm-hero__eyebrow > span:not(
      .sm-hero__eyebrow-dot
    ):not(
      .sm-hero__eyebrow-countries
    ) {
      grid-column: 2;
      grid-row: 1;
    }

    .sm-hero__eyebrow-countries {
      grid-column: 2;
      grid-row: 2;

      padding-left: 0;
    }

    .sm-hero .sm-hero__title {
      width: 100%;
      max-width: 100%;

      margin:
        0
        0
        36px !important;

      font-size:
        clamp(39px, 11.8vw, 52px) !important;

      line-height: 1;
      letter-spacing: -0.05em;

      text-wrap: balance;
      overflow-wrap: break-word;
    }

    .sm-hero__text {
      width: 100%;
      max-width: 100%;

      margin: 0;

      font-size: 16px;
      line-height: 1.58;
    }

    .sm-hero__actions {
      display: flex;
      align-items: stretch;
      flex-direction: column;

      width: 100%;

      gap: 12px;

      margin-top: 30px;
    }

    .sm-hero__button {
      width: 100%;
      min-width: 0;
      min-height: 54px;

      padding:
        15px 18px;

      text-align: center;
    }

    .sm-hero__action-note {
      width: 100%;

      margin-top:
        36px !important;

      padding:
        0 6px;

      text-align: center;

      font-size: 11px;
      line-height: 1.55;
    }

    .sm-hero__facts {
      width: 100%;
      max-width: none;

      margin-top: 36px;
    }

    .sm-hero__facts-inner {
      grid-template-columns:
        repeat(2, minmax(0, 1fr));

      width: 100%;
      max-width: 100%;

      margin: 0;

      padding:
        30px
        18px;
    }

    .sm-hero__fact {
      min-height: 132px;

      padding:
        0
        14px
        20px;
    }

    .sm-hero__fact:first-child,
    .sm-hero__fact:nth-child(3) {
      padding-left: 0;
    }

    .sm-hero__fact:nth-child(2),
    .sm-hero__fact:nth-child(4) {
      padding-right: 0;

      border-left:
        1px solid rgba(255, 255, 255, 0.13);
    }

    .sm-hero__fact:nth-child(3),
    .sm-hero__fact:nth-child(4) {
      padding-top: 22px;
      padding-bottom: 0;

      border-top:
        1px solid rgba(255, 255, 255, 0.13);
    }

    .sm-hero__fact strong {
      font-size:
        clamp(42px, 14vw, 58px);
    }

    .sm-hero__fact-subline {
      min-height: 1.2em;

      font-size:
        clamp(17px, 5vw, 22px);
    }

    .sm-hero__fact-title {
      margin-top: 12px;

      font-size: 12px;
      line-height: 1.25;
    }

    .sm-hero__fact-meta {
      font-size: 8px;
      letter-spacing: 0.12em;
    }

    .sm-hero__spotlight {
      display: none;
    }
  }


  /* =========================================================
     SEHR KLEINE SMARTPHONES
  ========================================================= */

  @media (max-width: 390px) {
    .sm-hero__container {
      padding:
        40px
        16px
        0;
    }

    .sm-hero .sm-hero__title {
      font-size:
        38px !important;
    }

    .sm-hero__facts-inner {
      grid-template-columns:
        repeat(2, minmax(0, 1fr));

      padding:
        28px
        16px;
    }

    .sm-hero__fact,
    .sm-hero__fact:first-child,
    .sm-hero__fact:nth-child(2),
    .sm-hero__fact:nth-child(3),
    .sm-hero__fact:nth-child(4) {
      min-height: 124px;

      padding:
        0
        10px
        18px;

      border-left: 0;
    }

    .sm-hero__fact:nth-child(2),
    .sm-hero__fact:nth-child(4) {
      border-left:
        1px solid rgba(255, 255, 255, 0.13);
    }

    .sm-hero__fact:nth-child(3),
    .sm-hero__fact:nth-child(4) {
      padding-top: 18px;
      padding-bottom: 0;

      border-top:
        1px solid rgba(255, 255, 255, 0.13);
    }
  }


  /* =========================================================
     REDUZIERTE BEWEGUNG
  ========================================================= */

  @media (prefers-reduced-motion: reduce) {
    .sm-hero *,
    .sm-hero *::before,
    .sm-hero *::after {
      scroll-behavior: auto !important;

      animation-duration:
        0.001ms !important;

      animation-iteration-count:
        1 !important;

      transition-duration:
        0.001ms !important;
    }

    .sm-hero__title-highlight::after {
      transform:
        scaleX(1);
    }
  }
/* Sämtliche lesbaren Hero-Texte bleiben auf allen Geräten mindestens 18 px groß. */
.sm-hero__eyebrow>span:not(.sm-hero__eyebrow-dot),.sm-hero__eyebrow-countries,.sm-hero__button,.sm-hero__action-note,.sm-hero__visual-label,.sm-hero__floating-card strong,.sm-hero__fact-title,.sm-hero__fact-meta,.sm-hero__fact-subline{font-size:18px!important}
.sm-hero__floating-card{min-width:210px}
@media(max-width:767px){.sm-hero__eyebrow{align-items:flex-start;flex-direction:column}.sm-hero__eyebrow-countries{margin-left:0}.sm-hero__facts-inner{grid-template-columns:1fr}.sm-hero__fact{min-width:0}.sm-hero__fact-title,.sm-hero__fact-meta,.sm-hero__fact-subline{overflow-wrap:anywhere}}

/* Primary homepage CTA matches the approved Robin mega-menu button. */
.sm-hero__button--primary{min-height:50px;padding:12px 20px;border:0;border-radius:12px 0 12px 0;background:linear-gradient(135deg,#ff3d24 0%,#cc0000 72%,#970000 100%);color:#fff!important;font-size:18px;font-weight:800;line-height:1.3;text-align:center;box-shadow:0 12px 28px rgba(204,0,0,.2)}
.sm-hero__button--primary:hover{transform:translateY(-3px);background:linear-gradient(135deg,#e82c17 0%,#b90000 72%,#790000 100%);box-shadow:0 18px 34px rgba(204,0,0,.28)}
.sm-hero__button--primary:focus-visible{outline:3px solid rgba(204,0,0,.34);outline-offset:4px}
.sm-hero__button--secondary{border:1px solid rgba(23,23,23,.14);border-radius:12px 0 12px 0;background:#fff;color:#171717!important;box-shadow:none}
