/* REVIERSTARK – Feinabstimmung für Smartphones und Tablets
   Wird nach site-416369ab.css geladen und ergänzt nur responsive Korrekturen. */

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  overflow-x: clip;
}

/* Einheitliche Vertrauensleiste auf allen regulären Inhaltsseiten */
.revierstark-site .shared-proof {
  background: #ebebe3;
  border-bottom: 1px solid #d9d9cd;
  padding: 22px 0;
}

.revierstark-site .shared-proof-grid {
  display: grid;
  grid-template-columns: 1.2fr 1.05fr 1.2fr 0.8fr;
  align-items: center;
  gap: 26px;
}

.revierstark-site .shared-proof-item,
.revierstark-site .shared-proof-people,
.revierstark-site .shared-proof-cert {
  min-width: 0;
}

.revierstark-site .shared-proof-people,
.revierstark-site .shared-proof-cert {
  display: flex;
  align-items: center;
  gap: 12px;
  color: inherit;
  text-decoration: none;
}

.revierstark-site .shared-proof .faces {
  display: flex;
  flex: none;
}

.revierstark-site .shared-proof .faces img {
  width: 42px;
  height: 53px;
  border: 2px solid #ebebe3;
  object-fit: cover;
  object-position: 50% 20%;
}

.revierstark-site .shared-proof .faces img + img {
  margin-left: -7px;
}

.revierstark-site .shared-proof strong,
.revierstark-site .shared-proof small {
  display: block;
}

.revierstark-site .shared-proof strong {
  font-size: 0.81rem;
  line-height: 1.5;
}

.revierstark-site .shared-proof small {
  margin-top: 3px;
  color: #68685b;
  font-size: 0.7rem;
  line-height: 1.7;
}

.revierstark-site .shared-proof-cert > img {
  width: 44px;
  height: 44px;
  flex: none;
  object-fit: contain;
}

.revierstark-site .shared-proof-rating {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.revierstark-site .shared-proof-rating img {
  width: min(160px, 100%);
  height: auto;
  max-height: 55px;
  object-fit: contain;
}

/* Gemeinsame Navigation mit zwei direkten Hauptgruppen */
.revierstark-site .navlinks {
  overflow: visible;
}

.revierstark-site .service-menu {
  position: relative;
  border: 0;
}

.revierstark-site .service-menu > summary {
  min-height: 44px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 0;
  color: #d1d1c9;
  font-size: 0.84rem;
  font-weight: 500;
  cursor: pointer;
}

.revierstark-site .service-menu > summary::after {
  display: none;
}

.revierstark-site .service-menu > summary span {
  color: #ffc800;
  font-size: 0.72rem;
  transition: transform 180ms ease;
}

.revierstark-site .service-menu[open] > summary span {
  transform: rotate(180deg);
}

.revierstark-site .service-menu-panel {
  position: absolute;
  top: calc(100% + 12px);
  left: 0;
  z-index: 70;
  width: min(290px, calc(100vw - 48px));
  display: grid;
  grid-template-columns: 1fr;
  gap: 1px;
  padding: 1px;
  background: #4a4a43;
  border: 1px solid #5d5d55;
  box-shadow: 0 18px 40px #00000045;
}

.revierstark-site .service-menu-panel > div {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 22px;
  background: #222220;
}

.revierstark-site .service-menu-panel strong,
.revierstark-site .mobile-nav-group {
  color: #ffc800;
  font-size: 0.66rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.revierstark-site .service-menu-panel strong {
  margin-bottom: 10px;
}

.revierstark-site .service-menu-panel a {
  padding: 8px 0;
  color: #f3f3ea;
  font-size: 0.86rem;
  text-decoration: none;
}

.revierstark-site .service-menu-panel a:hover,
.revierstark-site .service-menu-panel a[aria-current="page"] {
  color: #ffc800;
}

.revierstark-site .mobile-nav-group {
  padding: 17px 0 4px;
}

.revierstark-site .mobile-nav-group:first-of-type {
  padding-top: 6px;
}

.revierstark-site .goals-two {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
}

.revierstark-site .goals .goal {
  display: flex;
  flex-direction: column;
}

.revierstark-site .goals .goal .choose {
  margin-top: auto;
  padding-top: 25px;
}

.revierstark-site .plan-title {
  font-size: 1.55rem;
  line-height: 1.25;
  margin-bottom: 22px;
}


.revierstark-site .goals-note {
  margin-top: 22px;
  font-size: 0.93rem;
  color: #77766c;
  max-width: 620px;
}

.revierstark-site .production-ref {
  background: #edede7;
}

.revierstark-site .production-ref-inner {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 48px;
}

.revierstark-site .production-ref .intro {
  max-width: 640px;
}

.revierstark-site .production-ref .btn {
  flex: none;
}

.revierstark-site .tiktok-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(350px, 0.58fr);
}

.revierstark-site .platform-icon-tiktok {
  background: #050505;
  box-shadow: -3px 0 #25f4ee, 3px 0 #fe2c55;
}

/* Lange Wörter (Überschriften, Rechtstexte, E-Mail-Adressen) dürfen umbrechen */
.revierstark-site h1,
.revierstark-site h2,
.revierstark-site h3,
.revierstark-site h4,
.revierstark-site blockquote,
.revierstark-site summary,
.revierstark-site a,
.revierstark-site p,
.revierstark-site li,
.revierstark-site td {
  overflow-wrap: break-word;
  word-break: normal;
}

.revierstark-site img,
.revierstark-site svg,
.revierstark-site video,
.revierstark-site iframe,
.revierstark-site table {
  max-width: 100%;
}

/* Sprungmarken nicht unter der festen Kopfzeile verstecken */
.revierstark-site [id] {
  scroll-margin-top: 92px;
}

@media (max-width: 1100px) {
  /* Sichere Ränder auf Geräten mit Aussparung (iPhone Pro, Landscape) */
  .revierstark-site .wrap {
    padding-left: env(safe-area-inset-left);
    padding-right: env(safe-area-inset-right);
  }
  .revierstark-site [id] {
    scroll-margin-top: 84px;
  }
}

/* ---------- Tablets (Hoch- und Querformat) ---------- */
@media (min-width: 601px) and (max-width: 1100px) {
  .revierstark-site .wrap {
    width: min(calc(100% - 64px), 1180px);
  }
  .revierstark-site .hero-photo img,
  .revierstark-site .subhero-image > img {
    aspect-ratio: 1.5;
  }
  .revierstark-site .industry-strip {
    grid-template-columns: 1fr 1fr;
    height: auto;
  }
  .revierstark-site .industry-item {
    height: 200px;
  }
  .revierstark-site .example-grid {
    grid-template-columns: 1fr 1fr;
  }
  .revierstark-site .trust-grid {
    grid-template-columns: 1fr 1fr;
    gap: 20px 26px;
  }
  .revierstark-site .shared-proof-grid {
    grid-template-columns: 1fr 1fr;
    gap: 20px 30px;
  }
  .revierstark-site .shared-proof-rating {
    justify-content: flex-start;
  }
  .revierstark-site .goals-two {
    grid-template-columns: 1fr 1fr;
  }
  .revierstark-site .video-format-grid,
  .revierstark-site .signal-row,
  .revierstark-site .path-grid {
    gap: 24px;
  }
  .revierstark-site .tiktok-panel {
    grid-template-columns: 1fr 1fr;
  }
}

/* Tablet im Querformat: Kopfzeile kompakter halten */
@media (min-width: 820px) and (max-width: 1100px) {
  .revierstark-site .nav > .btn {
    padding-inline: 18px;
  }
}

/* ---------- Smartphones ---------- */
@media (max-width: 600px) {
  /* Bedienelemente mit ausreichend großer Trefferfläche */
  .revierstark-site .btn,
  .revierstark-site .menu-toggle,
  .revierstark-site button,
  .revierstark-site summary,
  .revierstark-site .mobile-nav a {
    min-height: 44px;
  }
  .revierstark-site .nav > .btn,
  .revierstark-site .btn {
    align-items: center;
    justify-content: center;
  }
  .revierstark-site .text-link {
    display: inline-block;
    padding-block: 6px;
  }

  /* Vertrauensleiste: Bilder dürfen nicht unter den Text rutschen */
  .revierstark-site .trust-person,
  .revierstark-site .trust-cert {
    align-items: flex-start;
  }
  .revierstark-site .trust-person .faces,
  .revierstark-site .trust-cert > img,
  .revierstark-site .sub-proof .faces {
    flex: none;
  }
  .revierstark-site .trust-person > div,
  .revierstark-site .trust-cert > div {
    min-width: 0;
  }
  .revierstark-site .trust-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .revierstark-site .shared-proof-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .revierstark-site .shared-proof-people,
  .revierstark-site .shared-proof-cert {
    align-items: flex-start;
  }
  .revierstark-site .shared-proof-rating {
    justify-content: flex-start;
  }
  .revierstark-site .shared-proof-rating img {
    width: 160px;
    max-width: 100%;
  }
  .revierstark-site .trust-grid > .trust-cert,
  .revierstark-site .trust-grid > .trust-years,
  .revierstark-site .trust-grid > .trust-rating {
    grid-column: 1;
    grid-row: auto;
  }
  .revierstark-site .sub-proof .wrap {
    gap: 16px;
  }
  .revierstark-site .sub-proof .seal-proof {
    max-width: none;
  }

  /* Branchenstreifen: klare Kacheln, keine fremde Nummer */
  .revierstark-site .industry-type::before {
    display: none;
  }
  .revierstark-site .industry-item {
    height: 150px;
  }

  /* Rechtstexte: sehr lange Wörter sauber trennen */
  .revierstark-site .legal-hero h1 {
    font-size: clamp(2.1rem, 9vw, 2.75rem);
    hyphens: auto;
  }
  .revierstark-site .legal-hero h2 {
    font-size: clamp(1.7rem, 7vw, 2.15rem);
    hyphens: auto;
  }
  .revierstark-site .legal-hero {
    hyphens: auto;
  }

  /* Formular: keine Zoom-Sprünge auf iOS, volle Breite */
  .revierstark-site input,
  .revierstark-site select,
  .revierstark-site textarea {
    font-size: 16px;
    max-width: 100%;
  }
  .revierstark-site form .btn {
    width: 100%;
  }

  .revierstark-site .goals-two {
    grid-template-columns: 1fr;
  }

  .revierstark-site .production-ref-inner {
    align-items: flex-start;
    flex-direction: column;
    gap: 24px;
  }

  .revierstark-site .production-ref .btn {
    width: 100%;
  }

  .revierstark-site .tiktok-panel {
    grid-template-columns: 1fr;
  }

  /* Tabellen und breite Blöcke scrollbar statt überstehend */
  .revierstark-site table {
    display: block;
    overflow-x: auto;
  }
}

/* ---------- Kleine Smartphones ---------- */
@media (max-width: 400px) {
  .revierstark-site .wrap {
    width: calc(100% - 32px);
  }
  .revierstark-site .nav .brand {
    font-size: 1.35rem;
  }
  .revierstark-site .industry-item {
    height: 138px;
  }
  .revierstark-site .industry-item > span {
    font-size: 1.05rem;
  }
}

/* ---------- Querformat auf dem Telefon ---------- */
@media (max-width: 900px) and (orientation: landscape) and (max-height: 500px) {
  .revierstark-site .hero,
  .revierstark-site .subhero {
    padding-block: 26px;
  }
  .revierstark-site .mobile-nav:not([hidden]) {
    max-height: 70vh;
    overflow-y: auto;
  }
}

/* Wirtschaftlicher Abschnitt: drei Punkte untereinander auf kleinen Screens */
@media (max-width: 900px) {
  .revierstark-site .value-grid {
    grid-template-columns: 1fr;
    gap: 26px;
    margin-top: 30px;
  }
}

/* Gemeinsame Fallstudien und echte Video-Testimonials */
.revierstark-site .evidence-section { background: var(--paper); }
.revierstark-site .home-case-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; margin-top: 44px; }
.revierstark-site .home-case { background: var(--dark); color: var(--paper); }
.revierstark-site .home-case > img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.revierstark-site .home-case > div { padding: 30px; }
.revierstark-site .home-case h3 { font-size: 1.55rem; line-height: 1.25; }
.revierstark-site .evidence-case-number,
.revierstark-site .evidence-sector { color: var(--yellow); font-size: .68rem; font-weight: 800; letter-spacing: 0; text-transform: uppercase; }
.revierstark-site .home-case dl { display: grid; gap: 18px; margin-top: 25px; }
.revierstark-site .home-case dt { font-size: .7rem; font-weight: 800; text-transform: uppercase; }
.revierstark-site .home-case dd { color: #c7c6b7; font-size: .86rem; line-height: 1.75; margin-top: 5px; }
.revierstark-site .evidence-video-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; margin-top: 42px; }
.revierstark-site .evidence-video-card { min-width: 0; }
.revierstark-site .evidence-video-cover { display: block; width: 100%; aspect-ratio: 16 / 9; position: relative; overflow: hidden; border: 0; background: var(--dark); padding: 0; cursor: pointer; }
.revierstark-site .evidence-video-cover img { width: 100%; height: 100%; object-fit: cover; transition: filter .2s; }
.revierstark-site .evidence-video-cover:hover img { filter: brightness(.82); }
.revierstark-site .evidence-play { position: absolute; inset: 50% auto auto 50%; transform: translate(-50%, -50%); display: grid; place-items: center; width: 56px; height: 56px; border: 1px solid #ffffffaa; border-radius: 50%; background: #191918cc; color: #fff; padding-left: 3px; }
.revierstark-site .evidence-video-card > div { padding-top: 15px; }
.revierstark-site .evidence-video-card h3 { font-size: 1rem; }
.revierstark-site .evidence-video-card p { color: #6a6a5e; font-size: .75rem; margin-top: 4px; }
.revierstark-site .evidence-video-card a { display: inline-block; color: inherit; font-size: .72rem; margin-top: 9px; text-underline-offset: 4px; }
.revierstark-site .evidence-reviews { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: #c9c9ba; margin-top: 52px; border: 1px solid #c9c9ba; }
.revierstark-site .evidence-reviews article { background: var(--paper); padding: 27px; }
.revierstark-site .evidence-reviews blockquote { font-size: 1.08rem; font-weight: 800; line-height: 1.5; margin: 15px 0; }
.revierstark-site .evidence-reviews article > p:not(.evidence-sector),
.revierstark-site .evidence-reviews small { display: block; color: #646454; font-size: .73rem; line-height: 1.65; }
.revierstark-site .evidence-reviews a { display: inline-block; color: inherit; font-size: .68rem; margin-top: 14px; text-underline-offset: 4px; }
.revierstark-site .evidence-source-note { color: #777764; font-size: .7rem; line-height: 1.7; margin-top: 13px; }
.revierstark-site .evidence-footer { display: flex; justify-content: space-between; align-items: center; gap: 30px; border-top: 1px solid #c9c9ba; margin-top: 30px; padding-top: 24px; }
.revierstark-site .evidence-footer p { color: #777764; font-size: .7rem; line-height: 1.75; max-width: 650px; }
.revierstark-site .evidence-footer .text-link { flex: none; font-size: .78rem; }
.revierstark-site .evidence-story { margin-top: 42px; }
.revierstark-site .evidence-story-tabs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-bottom: 1px solid #bdbdaf; }
.revierstark-site .evidence-story-tabs button { border: 0; border-top: 3px solid transparent; background: transparent; color: inherit; padding: 18px; text-align: left; font: 800 .85rem/1.4 var(--body); cursor: pointer; }
.revierstark-site .evidence-story-tabs button span { display: block; color: #8d7a3c; font-size: .65rem; margin-bottom: 5px; }
.revierstark-site .evidence-story-tabs button[aria-selected="true"] { border-top-color: var(--yellow); background: #e6e6dd; }
.revierstark-site .evidence-case-panel { display: grid; grid-template-columns: 1.08fr 1fr; background: var(--dark); color: var(--paper); }
.revierstark-site .evidence-case-panel[hidden] { display: none; }
.revierstark-site .evidence-case-panel > img { width: 100%; height: 100%; min-height: 460px; object-fit: cover; }
.revierstark-site .evidence-case-panel > div { padding: 42px; }
.revierstark-site .evidence-case-panel h3 { font-size: 2rem; margin-top: 8px; }
.revierstark-site .evidence-case-panel ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 26px 0; padding: 0; list-style: none; }
.revierstark-site .evidence-case-panel li { border-top: 2px solid var(--yellow); color: #e1e1d5; font-size: .72rem; line-height: 1.5; padding-top: 10px; }
.revierstark-site .evidence-case-panel h4 { font-size: .7rem; margin-top: 18px; text-transform: uppercase; }
.revierstark-site .evidence-case-panel p:not(.evidence-case-number) { color: #c7c6b7; font-size: .88rem; line-height: 1.8; margin-top: 7px; }
.revierstark-site .evidence-video-head { margin-top: 58px; }
.revierstark-site .evidence-video-head h3 { font-size: 2rem; }
.revierstark-site .evidence-video-dialog { width: min(940px, calc(100% - 32px)); max-height: calc(100dvh - 40px); margin: auto; padding: 22px; background: var(--dark); color: #fff; border: 1px solid #5e5e50; overflow: auto; }
.revierstark-site .evidence-video-dialog::backdrop { background: #000d; }
.revierstark-site .evidence-dialog-top { display: flex; justify-content: space-between; align-items: center; gap: 24px; margin-bottom: 19px; }
.revierstark-site .evidence-dialog-top h2 { font: 700 1rem/1.5 var(--body); }
.revierstark-site .evidence-dialog-top button { background: transparent; border: 1px solid #ffffff50; color: #fff; padding: 8px 12px; font-size: .8rem; }
.revierstark-site .evidence-video-frame { aspect-ratio: 16 / 9; background: #000; }
.revierstark-site .evidence-video-frame iframe { width: 100%; height: 100%; border: 0; display: block; }
.revierstark-site .evidence-video-external { display: inline-block; color: #c8c8b8; margin-top: 15px; font-size: .76rem; text-underline-offset: 4px; }

@media (min-width: 601px) and (max-width: 1100px) {
  .revierstark-site .evidence-video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .revierstark-site .evidence-reviews { grid-template-columns: 1fr; }
  .revierstark-site .evidence-story-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .revierstark-site .evidence-case-panel { grid-template-columns: 1fr; }
  .revierstark-site .evidence-case-panel > img { min-height: 0; aspect-ratio: 16 / 9; }
}

@media (max-width: 600px) {
  .revierstark-site .home-case-grid,
  .revierstark-site .evidence-video-grid,
  .revierstark-site .evidence-reviews,
  .revierstark-site .evidence-story-tabs,
  .revierstark-site .evidence-case-panel { grid-template-columns: 1fr; }
  .revierstark-site .home-case > div,
  .revierstark-site .evidence-case-panel > div { padding: 24px; }
  .revierstark-site .evidence-case-panel > img { min-height: 0; aspect-ratio: 3 / 2; }
  .revierstark-site .evidence-case-panel ul { grid-template-columns: 1fr; }
  .revierstark-site .evidence-footer { align-items: flex-start; flex-direction: column; }
  .revierstark-site .evidence-footer .text-link { flex: initial; }
}
