/* CARLO Design — Handy-Feinschliff (26.10.2026)
   Auf allen Seiten nach den Inline-Styles geladen, wirkt nur bis 720 px Breite.
   1. Nichts ragt seitlich aus dem Bildschirm (Tabellen, Stellenkarten)
   2. Startseite kuerzer: Projektgalerie zweispaltig, Kundenstimmen als Wischreihe
   3. Weniger Leerraum zwischen den Abschnitten
   4. Groessere Tippflaechen fuer kleine Links, Mindestschriftgroesse 11 px */

@media (max-width: 720px) {

  /* ---------- 3. Abstaende ---------- */
  :root { --space-3xl: 5.5rem; --space-2xl: 4rem; }

  /* ---------- 1. Seitliches Scrollen ---------- */
  .article-body table { display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; font-size: 15px;
    /* Schatten am Rand zeigt, dass sich die Tabelle seitlich wischen laesst */
    background:
      linear-gradient(to right, var(--c-white, #fff) 30%, rgba(255,255,255,0)),
      linear-gradient(to left, var(--c-white, #fff) 30%, rgba(255,255,255,0)) 100% 0,
      radial-gradient(farthest-side at 0 50%, rgba(66,37,21,.14), transparent),
      radial-gradient(farthest-side at 100% 50%, rgba(66,37,21,.14), transparent) 100% 0;
    background-repeat: no-repeat; background-size: 40px 100%, 40px 100%, 14px 100%, 14px 100%;
    background-attachment: local, local, scroll, scroll; }
  .article-body table th, .article-body table td { min-width: 8.5rem; }
  .answer-box table { background: none; }
  .project-fact { min-width: 0; }
  .project-fact__label, .project-fact__value { overflow-wrap: break-word; -webkit-hyphens: auto; hyphens: auto; }
  .car-jobs__list { grid-template-columns: minmax(0, 1fr); }
  .car-job { min-width: 0; overflow-wrap: break-word; }

  /* ---------- 2. Startseite: Kundenstimmen nebeneinander zum Wischen ---------- */
  .testimonials__grid {
    display: flex; gap: 0.75rem; overflow-x: auto; scroll-snap-type: x mandatory;
    margin-inline: -20px; padding: 0.25rem 20px 1rem; scroll-padding-inline: 20px;
    scrollbar-width: none; -webkit-overflow-scrolling: touch;
  }
  .testimonials__grid::-webkit-scrollbar { display: none; }
  .testimonials__grid > .testimonial { flex: 0 0 84%; margin: 0; min-height: 0; scroll-snap-align: start; }

  /* ---------- 4. Tippflaechen: unsichtbar auf 44 px vergroessert, Optik bleibt ---------- */
  .link-underline, .service__link, a.testimonial__project, .locations-note__links a, .loc-start__link,
  .location-service__link, .service-card__cta, .pcard__links a, .press-awards__links a,
  .site-footer__heading a, .car-intro__jump, .project-fact__value a, .location-card__address a {
    position: relative;
  }
  .link-underline::before, .service__link::before, a.testimonial__project::before, .locations-note__links a::before,
  .loc-start__link::before, .location-service__link::before, .service-card__cta::before, .pcard__links a::before,
  .press-awards__links a::before, .site-footer__heading a::before, .car-intro__jump::before,
  .project-fact__value a::before, .location-card__address a::before {
    content: ""; position: absolute; left: -6px; right: -6px; top: 50%; height: 44px; transform: translateY(-50%);
  }

  /* ---------- 4. Mindestschriftgroesse ---------- */
  /* !important, weil manche Seiten diese Regeln spezifischer im Seitenkoerper setzen */
  .jobs-badge, .ba__label, .ba-shot__tag, .home-gallery__cap-meta, .loc-projects__meta,
  .project-hero__meta strong, .project-review__label, .project-fact__label, .team-card__city,
  .project-card-medium__num, .project-card-small__num, .pc-kicker, .pc-count, .pc-src-q,
  .room-add, .wheel__skip, .bb-microcopy, .bb-copylink, .pc-thanks a,
  .bb .eyebrow, .pc .eyebrow { font-size: 11px !important; }
  .bb .field label, .pc .field label, .field > span,
  .bb .btn, .pc .btn, .bb-btn { font-size: 12px !important; }
}

/* ---------- 2. Startseite: Projektgalerie zweispaltig auch auf kleinen Handys ---------- */
@media (max-width: 480px) {
  .home-gallery .home-gallery__masonry { columns: 2; column-gap: 0.6rem; }
  .home-gallery .home-gallery__item { margin-bottom: 0.6rem; }
  .home-gallery .home-gallery__cap { padding: 1.75rem 0.7rem 0.6rem; }
  .home-gallery .home-gallery__cap-meta { display: none; }
  .home-gallery .home-gallery__cap-title { font-size: 0.95rem; }
}
