/* Unterseiten im v2-Design (Profil, Website-Check, Methodik, Für Betriebe, Leistungen, Impressum).
   Lädt nach directory-human.css und directory-v2.css und überschreibt nur Darstellung, keine Inhalte. */
body.v2-sub { background: var(--bg); color: var(--ink); font: 16px/1.6 var(--body); --accent: var(--action); --line: #e4e2da; --muted: #5f625c; }
.v2-sub .profile-wrap { max-width: 1000px; margin: 0 auto; padding: 8px 24px 40px; }
.v2-sub .v2-back { margin: 18px 0 0; font-size: 14px; }
.v2-sub .v2-back a { color: var(--muted); text-decoration: none; }
.v2-sub .v2-back a:hover { text-decoration: underline; }
.v2-sub h1, .v2-sub h2, .v2-sub h3 { font-family: var(--head); }
.v2-sub .profile-hero { padding: 22px 0 18px; }
.v2-sub .profile-hero h1 { margin: 6px 0 10px; font: 800 clamp(30px, 4.6vw, 52px)/1.05 var(--head); letter-spacing: -.02em; overflow-wrap: anywhere; }
.v2-sub .profile-hero > p { color: var(--muted); }
.v2-sub .eyebrow { font-size: 12px; letter-spacing: .16em; color: var(--muted); font-weight: 600; }
.v2-sub .panel { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius); padding: 24px; margin: 16px 0; box-shadow: none; }
.v2-sub .panel h2 { font: 700 21px/1.3 var(--head); margin: 0 0 12px; }
.v2-sub .owner-panel { background: linear-gradient(135deg, var(--lime-soft), var(--violet-soft)); border-color: #dcd6ea; }
.v2-sub .action, .v2-sub button.action { display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; border-radius: 12px; background: var(--action); border: 1px solid var(--action); color: #fff; font-weight: 700; text-decoration: none; }
.v2-sub .action.secondary { background: #fff; color: var(--ink); border-color: var(--line); }
.v2-sub .action:hover { filter: brightness(1.08); }
.v2-sub .actions { gap: 10px; }
.v2-sub a { color: var(--action); }
.v2-sub .evidence { background: var(--bg); border: 1px solid var(--line); }
.v2-sub .check-list li { border-color: var(--line); }
.v2-sub details.panel summary { cursor: pointer; font-weight: 700; }

/* Animierte Angebots-Szenen und GEO-Banner in den Markenfarben (Limette → Violett). */
.v2-sub .oo-offer, .v2-sub .geo-autopilot { --ga-hi: #a8e06a; --ga-dim: #b7b1c4; background: radial-gradient(120% 140% at 100% 0, #2b2140 0, #15121c 58%); border-radius: var(--radius); }
.v2-sub .oo-offer .ga-cta, .v2-sub .geo-autopilot .ga-cta { background: linear-gradient(90deg, #a8e06a, #c39be6); color: #15121c; border-radius: 12px; }
.v2-sub .oo-offer .ga-cta:hover, .v2-sub .geo-autopilot .ga-cta:hover { filter: brightness(1.06); background: linear-gradient(90deg, #b8ea80, #cfadeb); }
.v2-sub .oo-tile { border-radius: 14px; }

/* Impressum */
.v2-sub .v2-legal h1 { font: 800 32px/1.15 var(--head); margin: 0 0 8px; }
.v2-sub .v2-legal h2 { font-size: 18px; margin: 26px 0 8px; }
.v2-sub .v2-legal .contact td { padding: 4px 14px 4px 0; vertical-align: top; }
.v2-sub .v2-legal table { max-width: 100%; }
.v2-sub .v2-legal code { background: var(--bg); padding: 1px 5px; border-radius: 4px; overflow-wrap: anywhere; }

@media (max-width: 560px) {
  .v2-sub .profile-wrap { padding: 4px 16px 32px; }
  .v2-sub .panel { padding: 18px; }
  .v2-sub .actions .action { flex: 1 1 auto; justify-content: center; }
  .v2-sub .v2-legal .contact td { display: block; padding: 2px 0; }
  .v2-sub .v2-legal .contact tr { display: block; margin-bottom: 8px; }
}
.v2-sub .v2-brand, .v2-sub .v2-top nav a { color: var(--ink); }
