/*
 * DJURA KIRSCHNER · Gemeinsames Stylesheet · 23.10.2026
 * Reihenfolge: Schrift → Tokens → Basis → Layout → Komponenten → Responsive.
 * Rekonstruktion aus 14 Rastervorlagen. Alle Inhalte bleiben echtes HTML.
 * DIN 2014 wird über das Adobe-Fonts-Kit ecv7qjq im Dokumentkopf eingebunden.
 * Die folgenden lokalen Schnitte bleiben als Offline-Ersatz erhalten.
 */

@font-face {
  font-family: "DIN 2014";
  src: local("DIN2014-Regular"), local("DIN 2014 Regular"), local("DIN 2014");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "DIN 2014";
  src: local("DIN2014-Bold"), local("DIN 2014 Bold");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

/* 01 · Zentrale Gestaltungswerte */
:root {
  --color-brand: #c52055;
  --color-blush: #f9eeec;
  --color-white: #fefefe;
  --color-ink: #172b39;
  --color-muted: #53616a;
  --color-deep: #831139;
  --color-dark-photo: #421c2c;
  --color-number: #eaaaBC;
  --color-line: #ead7d9;
  --font-family: "din-2014", "DIN 2014", "Arial Narrow", "Liberation Sans Narrow", Arial, sans-serif;
  --font-regular: 400;
  --font-bold: 700;
  --text-small: .875rem;
  --text-body: clamp(1rem, 1.3vw, 1.1875rem);
  --text-lead: clamp(1.0625rem, 1.7vw, 1.4375rem);
  --text-h1: clamp(2.5rem, 4.6vw, 4.5rem);
  --text-h2: clamp(1.625rem, 2.6vw, 2.5rem);
  --text-h3: clamp(1.25rem, 1.8vw, 1.75rem);
  --space-1: .5rem;
  --space-2: 1rem;
  --space-3: 1.5rem;
  --space-4: 2rem;
  --space-5: 3rem;
  --space-6: 4.5rem;
  --gutter: clamp(1.25rem, 4vw, 4rem);
  --section-space: clamp(1.75rem, 3vw, 3rem);
  --grid-gap: clamp(.75rem, 1.4vw, 1.25rem);
  --content-width: 84rem;
  --page-width: 96rem;
  --header-height: 8rem;
  --radius-card: .8rem;
  --radius-pill: 999px;
  --button-height: 3rem;
  --transition: 180ms ease;
}

/* 02 · Basis: keine globale Bildhöhe, keine gestapelten Prioritätskorrekturen */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { margin: 0; color: var(--color-ink); background: var(--color-white); font-family: var(--font-family); font-size: var(--text-body); font-weight: 400; line-height: 1.4; }
button, input, textarea, select { font: inherit; }
button, a, input, textarea { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
a { color: inherit; }
img { display: block; max-width: 100%; height: auto; }
svg { display: block; }
h1, h2, h3, p, figure, blockquote { margin: 0; }
h1, h2, h3 { line-height: 1.08; font-weight: 700; overflow-wrap: break-word; }
h1 { font-size: var(--text-h1); }
h2 { font-size: var(--text-h2); }
h3 { font-size: var(--text-h3); }
p + p { margin-top: .8em; }
strong { font-weight: 700; }
ul, ol { margin: 0; padding: 0; }
fieldset { margin: 0; padding: 0; border: 0; min-width: 0; }
legend { float: left; width: 100%; padding: 0; }
legend + * { clear: both; }
:focus-visible { outline: 3px solid var(--color-brand); outline-offset: 5px; }
a:focus-visible, button:focus-visible { border-radius: .25rem; }
.page[hidden], article[data-page][hidden], [hidden] { display: none; }
/* Ohne JavaScript bleiben alle Seiten der Einzeldatei lesbar. */
html:not(.js) body[data-mode="standalone"] article[data-page][hidden] { display: block; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.skip-link { position: fixed; inset: .75rem auto auto .75rem; z-index: 100; padding: .75rem 1rem; background: var(--color-white); color: var(--color-brand); transform: translateY(-200%); }
.skip-link:focus { transform: none; }
.site-shell { width: 100%; }
.container { width: min(calc(100% - var(--gutter) * 2), var(--content-width)); margin-inline: auto; }
.section { padding-block: var(--section-space); }
.eyebrow { display: block; margin-bottom: .65rem; color: var(--color-brand); font-size: var(--text-small); font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.icon { width: 2.75rem; height: 2.75rem; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.icon--arrow { width: 1.5rem; height: 1.5rem; }
.icon--small { width: 1.5rem; height: 1.5rem; }
.icon-circle { display: inline-grid; place-items: center; width: 4rem; height: 4rem; border-radius: 50%; color: var(--color-brand); background: var(--color-blush); flex: 0 0 auto; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 1rem; min-height: var(--button-height); padding: .65rem 1.65rem; border: 1.5px solid transparent; border-radius: var(--radius-pill); background: var(--color-brand); color: var(--color-white); text-decoration: none; font-weight: 700; font-size: 1rem; line-height: 1.2; text-align: center; transition: background var(--transition), box-shadow var(--transition); }
.button:hover { background: var(--color-deep); }
.button--outline { border-color: currentColor; background: transparent; color: var(--color-brand); }
.button--outline:hover { background: var(--color-blush); }
.button--white { color: var(--color-brand); background: var(--color-white); }
.button--white:hover { background: var(--color-blush); }
.button--ghost { color: var(--color-white); background: transparent; border-color: currentColor; }
.button--ghost:hover { background: rgb(254 254 254 / .13); }
.text-link { display: inline-flex; align-items: center; gap: .85rem; width: fit-content; padding-block: .2rem; color: var(--color-brand); font-weight: 700; text-decoration: none; border-bottom: 1px solid currentColor; }
.text-link:hover { color: var(--color-deep); }
.actions { display: flex; flex-wrap: wrap; gap: 1.25rem 2rem; align-items: center; margin-top: 1.8rem; }

/* 03 · Einheitliche Navigation */
.site-header { position: relative; z-index: 20; height: var(--header-height); margin-bottom: calc(-1 * var(--header-height)); }
.site-header__inner { height: 100%; display: flex; align-items: flex-start; justify-content: space-between; gap: 1.5rem; padding-top: 1rem; }
.brand { flex: 0 0 auto; }
.brand img { width: 10.5rem; height: 7.25rem; object-fit: contain; object-position: left top; mix-blend-mode: multiply; }
.primary-nav { display: flex; align-items: center; gap: clamp(1rem, 2.25vw, 2.4rem); padding-top: 1rem; }
.primary-nav > a { text-decoration: none; font-size: 1rem; white-space: nowrap; }
.primary-nav > a:not(.button) { padding-block: .55rem; border-bottom: 2px solid transparent; }
.primary-nav > a[aria-current="page"]:not(.button), .primary-nav > a:not(.button):hover { color: var(--color-brand); border-color: currentColor; }
.primary-nav .button { font-size: .95rem; min-height: 2.8rem; padding-inline: 1.5rem; }
.nav-toggle { display: none; padding: .5rem; width: 3rem; height: 3rem; border: 0; color: var(--color-brand); background: transparent; }
.nav-toggle__lines, .nav-toggle__lines::before, .nav-toggle__lines::after { position: relative; display: block; height: 3px; width: 1.9rem; background: currentColor; }
.nav-toggle__lines::before, .nav-toggle__lines::after { content: ""; position: absolute; left: 0; }
.nav-toggle__lines::before { top: -.55rem; }
.nav-toggle__lines::after { top: .55rem; }

/* 04 · Hero: Text und Foto getrennt, Bildschwerpunkt pro Variante */
.hero { position: relative; isolation: isolate; min-height: 40rem; padding-block: calc(var(--header-height) + 2rem) 3rem; overflow: hidden; background: linear-gradient(100deg, var(--color-white), var(--color-blush)); }
.hero__media { position: absolute; z-index: -1; top: 4.5rem; right: 0; bottom: 0; width: 57%; -webkit-mask-image: linear-gradient(90deg,transparent,black 22%); mask-image: linear-gradient(90deg,transparent,black 22%); }
.hero__media img { width: 100%; height: 100%; object-fit: contain; object-position: right bottom; }
.hero__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, var(--color-blush) 0%, rgb(249 238 236 / .65) 8%, transparent 30%); }
.hero__content { width: 53%; }
.hero h1 { color: var(--color-brand); letter-spacing: -.035em; }
.hero__lead { max-width: 35rem; margin-top: 1.5rem; font-size: var(--text-lead); line-height: 1.35; color: var(--color-muted); }
.hero--home { --hero-image-top: 6.5rem; display: grid; align-items: center; min-height: 46rem; padding-block: var(--hero-image-top) 0; }
.hero--home > .container { padding-block: 2rem; }
.hero--home .hero__media { top: var(--hero-image-top); width: 62%; }
.hero--home .hero__media img { object-position: 49% 30%; }
.hero--home .hero__media img, .hero--emotional .hero__media img { object-fit: cover; }
.hero--home .hero__content { width: 49%; }
.hero--home h1 { font-weight: 400; max-width: 37rem; }
.hero--home h1 strong { display: block; }
.hero--method h1 { font-size: clamp(2.25rem, 3.7vw, 3.7rem); letter-spacing: -.02em; }
.hero--method h1 span { display: block; }
.hero--method h1 span strong { font-weight: 700; }
.hero--method h1 { font-weight: 400; }
.hero--activities { min-height: 35rem; }
.hero--activities h1 { font-size: clamp(2.1rem, 3.55vw, 3.5rem); }
.hero--activities .hero__content { width: 57%; }
.hero--activities .hero__lead { max-width: 30rem; }
.hero--emotional { min-height: 43rem; }
.hero--emotional h1 { max-width: 41rem; text-transform: uppercase; }
.hero--emotional .hero__media { top: 7rem; width: 59%; }
.hero--emotional .hero__lead { color: var(--color-ink); font-size: 1.25rem; max-width: 33rem; }
.hero--vita::after { content: ""; z-index: -1; position: absolute; inset: 0 0 0 auto; width: 10%; background: var(--color-brand); clip-path: polygon(100% 0,100% 100%,0 100%); }
.hero--vita .hero__media { right: 4%; width: 53%; }
.hero--vita .hero__media img { object-position: 50% top; }

/* 05 · Iconleisten und Kennzahlen */
.feature-strip { background: var(--color-blush); padding-block: 1.5rem; }
.feature-strip__list { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; }
.feature-strip--five .feature-strip__list { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.feature { position: relative; display: flex; align-items: center; gap: 1rem; min-width: 0; }
.feature + .feature { border-left: 1px solid var(--color-brand); padding-left: 1.5rem; }
.feature .icon { color: var(--color-brand); }
.feature__text { font-size: 1rem; line-height: 1.25; overflow-wrap: anywhere; }
.feature-strip--method .feature__text { color: var(--color-brand); }
.feature-strip--metrics { background: linear-gradient(90deg,var(--color-white),var(--color-blush)); padding-block: 2rem; }
.feature__value { display: block; font-size: 1.25rem; font-weight: 700; margin-bottom: .2rem; }
.feature-strip--metrics .feature__text { font-size: .9rem; }

/* 06 · Foto-Karten: gemeinsame Basis, bewusste Bildvarianten */
.home-grid, .method-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: var(--grid-gap); }
.image-card { position: relative; isolation: isolate; overflow: hidden; display: flex; min-height: 22rem; border-radius: var(--radius-card); text-decoration: none; background: var(--color-blush); }
.image-card__media { position: absolute; z-index: -2; inset: 0 0 0 auto; width: 63%; -webkit-mask-image: linear-gradient(90deg,transparent,black 20%); mask-image: linear-gradient(90deg,transparent,black 20%); }
.image-card__media img { width: 100%; height: 100%; object-fit: cover; }
.image-card::after { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,var(--color-blush) 0%,var(--color-blush) 38%,rgb(249 238 236 / .76) 48%,transparent 77%); }
.image-card__content { display: flex; flex-direction: column; align-items: flex-start; width: 57%; padding: 2rem; }
.image-card__number { font-size: 2rem; line-height: 1; margin-bottom: .45rem; }
.image-card h2, .image-card h3 { font-size: clamp(1.5rem, 2.25vw, 2.1rem); }
.image-card p { margin-top: 1.4rem; font-size: 1rem; line-height: 1.3; }
.image-card__link { margin-top: auto; padding-top: 1rem; }
.image-card .button { min-height: 2.7rem; font-size: .95rem; padding: .4rem 1.2rem; }
.image-card:hover .image-card__link .icon { transform: translateX(3px); }
.image-card .icon { transition: transform var(--transition); }
.image-card--magenta { background: var(--color-deep); color: var(--color-white); }
.image-card--magenta::after { background: linear-gradient(90deg,var(--color-deep) 2%,rgb(131 17 57 / .95) 33%,rgb(131 17 57 / .65) 51%,transparent 83%); }
.home-grid .image-card__media { width: 55%; }
.home-grid .home-card--methodology .image-card__media, .home-grid .home-card--development .image-card__media, .home-grid .home-card--vita .image-card__media { width: 43%; }
.home-grid .image-card__content { width: 62%; }
.home-grid .image-card h2 { text-transform: uppercase; }
.about { display: grid; grid-template-columns: .85fr 1.15fr; gap: 3rem; align-items: center; }
.about__image { width: 100%; aspect-ratio: 1.32; object-fit: cover; border-radius: var(--radius-card); }
.about h2 { color: var(--color-brand); }
.about p { margin-top: 1rem; color: var(--color-muted); }
.method-card h2 { color: var(--color-brand); text-transform: uppercase; }
.method-card p { margin-top: auto; padding-top: 2rem; color: var(--color-brand); }
.method-card--reverse .image-card__media { right: auto; left: 0; }
.method-card--reverse .image-card__media { -webkit-mask-image: linear-gradient(270deg,transparent,black 20%); mask-image: linear-gradient(270deg,transparent,black 20%); }
.method-card--reverse .image-card__content { margin-left: auto; width: 55%; }
.method-card--reverse { background: var(--color-dark-photo); }
.method-card--reverse::after { background: linear-gradient(90deg,transparent 10%,rgb(66 28 44 / .15) 35%,var(--color-dark-photo) 75%); }
.method-card--reverse h2, .method-card--reverse p { color: var(--color-white); }
.method-card__arrow { color: inherit; margin-top: .75rem; }

/* Methodik: lokale Originalbilder und separate Mobilmotive. */
.hero--method { --hero-image-top: 6.5rem; display: grid; align-items: center; padding-block: var(--hero-image-top) 0; }
.hero--method > .container { padding-block: 2rem; }
.hero--method .hero__media { top: var(--hero-image-top); }
.hero--method .hero__media picture { display: block; height: 100%; }
.hero--method .hero__media img { object-fit: cover; object-position: center 28%; }
.page--methodik img.icon { object-fit: contain; }
.page--methodik .feature-strip--method { color: var(--color-brand); }
.page--methodik .method-card .image-card__media { width: 100%; -webkit-mask-image: none; mask-image: none; }
.page--methodik .method-card::after { background: linear-gradient(90deg,var(--color-blush) 0%,var(--color-blush) 34%,rgb(249 238 236 / .85) 44%,transparent 73%); }
.page--methodik .method-card--reverse::after { background: linear-gradient(90deg,transparent 20%,rgb(66 28 44 / .3) 40%,var(--color-dark-photo) 66%); }
.page--methodik .question-banner__children img { width: 100%; height: 100%; object-fit: cover; }

/* 07 · Entwicklungsfelder: sechs unverwechselbare Mosaikfelder */
.hero--development { --hero-image-top: 6.5rem; display: grid; align-items: center; padding-block: var(--hero-image-top) 0; }
.hero--development > .container { padding-block: 2rem; }
.hero--development .hero__media { top: var(--hero-image-top); }
.hero--development .hero__media img { object-fit: cover; object-position: 76% center; }
.page--entwicklungsfelder img.icon { object-fit: contain; }
.field-grid { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); grid-template-rows: minmax(20rem,auto) minmax(19rem,auto) minmax(17rem,auto); gap: var(--grid-gap); }
.field-card { min-height: 0; }
.field-card h2 { font-size: clamp(1.45rem, 2vw, 2rem); }
.field-card .image-card__content { width: 57%; padding: 2rem; }
.field-card .image-card__link { color: inherit; }
.field-card--leadership { grid-area: 1 / 1 / 2 / 7; }
.field-card--leadership .image-card__media img { object-position: left center; }
.field-card--leadership .image-card__media { width: 50%; }
.field-card--team { grid-area: 1 / 7 / 2 / 13; }
.field-card--selling { grid-area: 2 / 1 / 4 / 4; }
.field-card--presentation { grid-area: 2 / 4 / 3 / 9; }
.field-card--communication { grid-area: 3 / 4 / 4 / 9; }
.field-card--explorer { grid-area: 2 / 9 / 4 / 13; color: var(--color-white); background: #343325; }
.field-card--selling .image-card__content { width: 100%; padding: 1.7rem; padding-bottom: 19rem; }
.field-card--selling .image-card__media { inset: auto 0 0; height: 55%; width: 100%; }
.field-card--selling .image-card__media { -webkit-mask-image: linear-gradient(180deg,transparent,black 20%); mask-image: linear-gradient(180deg,transparent,black 20%); }
.field-card--selling .image-card__media img { object-position: 20% center; }
.field-card--selling::after { background: linear-gradient(180deg,var(--color-blush) 0%,var(--color-blush) 42%,transparent 63%); }
.field-card--selling h2 { max-width: 11rem; }
.field-card--selling .image-card__link { margin-top: .5rem; }
.field-card--explorer .image-card__media { width: 100%; }
.field-card--explorer .image-card__media { -webkit-mask-image: none; mask-image: none; }
.field-card--explorer .image-card__media img { object-position: 58% top; }
.field-card--explorer::after { background: linear-gradient(180deg,transparent 30%,rgb(25 26 18 / .85) 78%); }
.field-card--explorer .image-card__content { justify-content: flex-end; width: 100%; padding: 2rem; }
.field-card--explorer .image-card__link { margin-top: .5rem; }

/* 08 · Tätigkeiten: schräge Originalbilder niemals per skew verzerren */
.activity-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2rem 2.5rem; }
.activity-card { display: grid; grid-template-columns: 1fr 1.05fr; align-items: start; gap: .7rem; min-width: 0; }
.activity-card__number { color: var(--color-number); font-weight: 700; font-size: 5rem; line-height: .95; letter-spacing: -.04em; }
.activity-card h2 { color: var(--color-brand); font-size: clamp(1.4rem, 1.85vw, 1.8rem); margin-top: .25rem; }
.activity-card h2::after { content: ""; display: block; width: 2.25rem; height: 2px; margin-block: .8rem; background: var(--color-brand); }
.activity-card p { color: var(--color-muted); font-size: 1rem; }
.activity-card .text-link { margin-top: .7rem; font-size: .95rem; }
.activity-card__media { position: relative; min-width: 0; }
.activity-card__media img { position: relative; width: 100%; height: auto; object-fit: contain; }
.activity-card:first-child .activity-card__media::before { content: ""; position: absolute; left: 2%; bottom: -3%; width: 24%; height: 55%; background-image: radial-gradient(var(--color-brand) .7px, transparent .9px); background-size: 7px 7px; transform: skew(-13deg); }
/* Für später gelieferte rechteckige Originalfotos statt der Alpha-Ausschnitte. */
.activity-card__media--original img { aspect-ratio: 1.18; object-fit: cover; clip-path: polygon(17% 0,100% 0,83% 100%,0 100%); border-radius: var(--radius-card); }
.hero--activities { --hero-image-top: 6.5rem; display: grid; align-items: center; padding-block: var(--hero-image-top) 0; }
.hero--activities > .container { padding-block: 2rem; }
.hero--activities .hero__media { top: var(--hero-image-top); }
.hero--activities .hero__media img { object-fit: cover; object-position: center 30%; }
.activities-heading--mobile { display: none; }
.page--taetigkeitsbereiche img.icon { object-fit: contain; }
.page--taetigkeitsbereiche .feature-strip--method { color: var(--color-brand); }

/* 09 · Wiederkehrende redaktionelle Bänder */
.question-banner { display: grid; grid-template-columns: 39% 35% 26%; align-items: stretch; background: var(--color-blush); overflow: hidden; }
.question-banner__children, .question-banner__man { width: 100%; height: 100%; min-height: 13rem; object-fit: cover; }
.question-banner__children { object-position: center; }
.question-banner__man { object-position: center; }
.question-banner__copy { position: relative; z-index: 1; align-self: center; padding: 1.25rem 1.6rem; }
.question-banner h2 { font-size: clamp(1.5rem, 2.15vw, 2rem); }
.question-banner p { margin-top: .4rem; color: var(--color-brand); font-size: 1.45rem; line-height: 1.15; }
.question-banner .button { margin-top: .7rem; min-height: 2.4rem; font-size: .85rem; padding: .4rem 1rem; }
.process { background: linear-gradient(90deg,var(--color-white),var(--color-blush)); padding-block: 1.75rem; }
.process__inner { display: grid; grid-template-columns: 1.1fr 4fr; gap: 2rem; }
.process__intro h2 { font-size: 1.6rem; color: var(--color-brand); }
.process__intro p { font-size: .9rem; margin-top: .65rem; }
.process__steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1.5rem; list-style: none; }
.process__step { position: relative; min-width: 0; }
.process__step:not(:last-child)::after { content: ""; position: absolute; top: 2rem; left: 5rem; right: 0; border-top: 2px dotted var(--color-brand); }
.process__number { display: block; margin-top: .7rem; color: var(--color-brand); font-size: .875rem; font-weight: 700; }
.process h3 { font-size: 1.1rem; line-height: 1.25; }
.process__step p { font-size: .875rem; margin-top: .3rem; }
.testimonial { position: relative; background: var(--color-blush); overflow: hidden; }
.testimonial__image { position: absolute; top: 0; bottom: 0; right: 0; width: 49%; height: 100%; object-fit: cover; }
.testimonial::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,var(--color-blush) 40%,transparent 75%); }
.testimonial__content { position: relative; z-index: 1; display: flex; gap: 1.5rem; width: 62%; padding-block: 2rem; }
.testimonial__content > .icon { color: var(--color-brand); }
.testimonial blockquote p { font-size: 1.15rem; }
.testimonial cite { display: block; margin-top: .8rem; color: var(--color-brand); font-size: .95rem; font-style: normal; }

/* 10 · Vita */
.hero--vita { --hero-image-top: 6.5rem; display: grid; align-items: center; padding-block: var(--hero-image-top) 0; }
.hero--vita > .container { padding-block: 2rem; }
.hero--vita .hero__media { top: var(--hero-image-top); }
.hero--vita .hero__media img { object-fit: cover; object-position: center 35%; }
.hero--vita h1 { font-size: clamp(2rem, 4.2vw, 4.2rem); }
.page--vita > .section { padding-block: .75rem; }
.page--vita > .feature-strip + .section { padding-top: 2rem; }
.page--vita .timeline-panel, .page--vita .industry-panel, .page--vita .value-grid { margin-top: 0; }
.page--vita .icon { object-fit: contain; }
.vita-grid { display: grid; grid-template-columns: 1.6fr 1fr; gap: var(--grid-gap); align-items: start; }
.vita-topics > h2 { font-size: 1.3rem; color: var(--color-brand); text-transform: uppercase; margin-bottom: 1rem; }
.focus-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .8rem; }
.focus-item { display: flex; align-items: center; gap: .7rem; padding: 1rem .8rem; border: 1px solid var(--color-line); border-radius: .6rem; background: linear-gradient(120deg,var(--color-blush),var(--color-white)); font-size: .9rem; min-height: 6rem; }
.focus-item .icon { width: 2.3rem; height: 2.3rem; color: var(--color-brand); }
.vita-qualifications { display: grid; gap: 1rem; }
.panel { padding: 1.5rem; border-radius: var(--radius-card); background: linear-gradient(120deg,var(--color-blush),var(--color-white)); }
.panel__title { display: flex; align-items: center; gap: 1rem; color: var(--color-brand); margin-bottom: 1rem; }
.panel__title h2, h2.panel__title { font-size: 1.2rem; text-transform: uppercase; line-height: 1.2; }
.panel__title .icon { width: 2.2rem; height: 2.2rem; }
.arrow-list, .check-list { list-style: none; }
.arrow-list li { position: relative; padding-left: 1.2rem; font-size: 1rem; margin-top: .45rem; }
.arrow-list li::before { content: "›"; position: absolute; left: 0; color: var(--color-brand); font-weight: 700; }
.timeline-panel { position: relative; isolation: isolate; overflow: hidden; border-radius: var(--radius-card); margin-top: 1.5rem; background: var(--color-blush); }
.timeline-panel__image { position: absolute; z-index: -2; inset: 0 0 0 auto; width: 52%; height: 100%; object-fit: cover; object-position: center; }
.timeline-panel::after { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,var(--color-blush) 42%,rgb(249 238 236 / .85) 52%,transparent 68%); }
.timeline-panel__content { width: 62%; padding: 1.75rem; }
.timeline { list-style: none; padding-left: .8rem; }
.timeline li { position: relative; display: grid; grid-template-columns: 5.5rem 1fr; gap: 1rem; border-left: 1px solid var(--color-brand); padding: 0 0 1.5rem 1.2rem; font-size: 1rem; }
.timeline li:last-child { padding-bottom: .25rem; }
.timeline li::before { content: ""; position: absolute; left: -.28rem; top: .3rem; width: .55rem; height: .55rem; border-radius: 50%; background: var(--color-brand); }
.timeline li strong { color: var(--color-brand); }
.industry-panel { margin-top: 1rem; padding: 1.3rem 1.5rem; border-radius: var(--radius-card); background: var(--color-blush); }
.industry-list { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 1rem; list-style: none; }
.industry-item { display: flex; align-items: center; gap: .6rem; font-size: .85rem; }
.industry-item .icon { width: 2.3rem; height: 2.3rem; color: var(--color-brand); }
.value-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--grid-gap); margin-top: 1rem; }
.value-card { position: relative; isolation: isolate; overflow: hidden; border-radius: var(--radius-card); background: var(--color-blush); }
.value-card__image { position: absolute; z-index: -2; inset: 0 0 0 auto; width: 37%; height: 100%; object-fit: cover; }
.value-card::after { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,var(--color-blush) 50%,rgb(249 238 236 / .88) 64%,transparent 88%); }
.value-card__content { width: 84%; padding: 1.5rem; }
.check-list li { position: relative; display: flex; align-items: flex-start; gap: .65rem; margin-top: .55rem; font-size: 1rem; }
.check-list li > .icon { width: 1.2rem; height: 1.2rem; margin-top: .12rem; flex-shrink: 0; color: var(--color-brand); }

/* 11 · Emotional Selling */
.page--detail .hero--emotional { --hero-image-top: 6.5rem; display: grid; align-items: center; padding-block: var(--hero-image-top) 0; }
.page--detail .hero--emotional > .container { padding-block: 2rem; }
.page--detail .hero--emotional .hero__media { top: var(--hero-image-top); }
.page--detail > .section { padding-block: 1.25rem; }
.page--detail .emotional-details, .page--detail .package-section { margin-top: 0; }
.page--detail .benefits-panel__image { width: 100%; opacity: 1; object-position: center; }
.page--detail .package-section h2 { margin-bottom: 1rem; font-size: clamp(1.45rem, 2.4vw, 2.25rem); }
.emotional-intro { display: grid; grid-template-columns: .85fr 1.15fr; gap: 2rem; align-items: start; }
.emotional-intro__copy p { margin-top: 1rem; }
.principles { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.principle { border: 1px dashed var(--color-number); border-radius: var(--radius-card); padding: 1.2rem; }
.principle > .icon, .principle .icon-circle { background: var(--color-brand); color: var(--color-white); border-radius: 50%; padding: .7rem; width: 4.4rem; height: 4.4rem; }
.principle h3 { color: var(--color-brand); font-size: 1.35rem; margin-top: 1.2rem; text-transform: uppercase; }
.principle p { margin-top: .85rem; font-size: 1rem; }
.emotional-details { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; margin-top: 1.5rem; }
.benefits-panel { position: relative; isolation: isolate; overflow: hidden; padding: 1.75rem; border-radius: var(--radius-card); background: linear-gradient(100deg,var(--color-deep),var(--color-brand)); color: var(--color-white); }
.benefits-panel__image { position: absolute; z-index: -1; inset: 0 0 0 auto; height: 100%; width: 28%; object-fit: cover; opacity: .8; }
.benefits-panel h2 { font-size: 1.8rem; margin-bottom: 1rem; }
.benefits-panel .check-list li > .icon { color: var(--color-white); }
.benefits-panel .check-list { max-width: 90%; }
.audience-panel { display: flex; align-items: center; gap: .7rem; padding: 1rem 0; }
.audience-panel__copy { flex: 1; min-width: 0; }
.audience-panel h2 { margin-bottom: 1rem; }
.audience-panel .dragonfly { width: 37%; mix-blend-mode: multiply; object-fit: contain; }
.audience-list { list-style: none; }
.audience-list li { display: flex; gap: .8rem; align-items: center; margin-top: .6rem; font-size: 1rem; }
.audience-list .icon { width: 2rem; height: 2rem; color: var(--color-brand); }
.package-section { margin-top: 1.75rem; }
.package-section > h2 { font-size: 2rem; margin-bottom: 1rem; }
.package-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.package-card { display: flex; gap: 1.5rem; padding: 1.5rem; border-radius: var(--radius-card); background: linear-gradient(115deg,var(--color-deep),var(--color-brand)); color: var(--color-white); text-decoration: none; }
.package-card h3 { font-size: 1.4rem; }
.package-card p { margin-top: .65rem; font-size: 1rem; }
.package-card .text-link { color: inherit; margin-top: 1rem; font-size: .95rem; }
.emotion-quote { position: relative; isolation: isolate; overflow: hidden; background: var(--color-blush); }
.emotion-quote__image { position: absolute; z-index: -2; inset: 0 0 0 auto; width: 37%; height: 100%; object-fit: cover; }
.emotion-quote::after { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,var(--color-blush) 54%,transparent 83%); }
.emotion-quote__content { display: flex; gap: 1.5rem; align-items: center; width: 72%; padding-block: 1.5rem; }
.emotion-quote__content > .icon { width: 4rem; height: 4rem; color: var(--color-brand); align-self: flex-start; }
.emotion-quote blockquote { font-size: 1.65rem; font-weight: 700; line-height: 1.15; text-transform: uppercase; flex: 1; }
.emotion-quote__content > p { max-width: 16rem; font-size: 1rem; }

/* 12 · Touchpoint: native, zugängliche Auswahlfelder */
.touchpoint { padding-block: 1.5rem; background: linear-gradient(150deg,var(--color-white),var(--color-blush)); }
.selection-step + .selection-step { margin-top: 1.75rem; }
.selection-step__heading { display: flex; align-items: center; gap: 2rem; margin-bottom: 1.1rem; }
.selection-step__number { color: var(--color-number); font-size: 5rem; line-height: 1; font-weight: 700; }
.selection-step h2 { color: var(--color-brand); font-size: 2rem; }
.selection-step__title { display: block; color: var(--color-brand); font-size: 2rem; font-weight: 700; line-height: 1.15; }
.selection-step__description { display: block; margin-top: .35rem; color: var(--color-muted); }
.selection-step__heading p { margin-top: .35rem; color: var(--color-muted); }
.activity-options { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; }
.choice { position: relative; display: block; border: 1px solid var(--color-line); border-radius: var(--radius-card); background: var(--color-white); padding: .55rem; cursor: pointer; }
.choice:has(input:checked) { border-color: var(--color-brand); background: var(--color-blush); box-shadow: inset 0 0 0 1px var(--color-brand); }
.choice:focus-within { outline: 3px solid var(--color-brand); outline-offset: 3px; }
.choice__image { width: 100%; aspect-ratio: 1.72; object-fit: cover; border-radius: .5rem; }
.choice__body { display: grid; grid-template-columns: 1.75rem minmax(0,1fr); gap: .7rem; padding: .8rem .5rem .6rem; }
.choice__body > span, .choice--topic > span { min-width: 0; }
.choice input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.choice__control { display: grid; place-items: center; width: 1.65rem; height: 1.65rem; border: 1px solid #6e7e87; border-radius: .3rem; background: var(--color-white); color: transparent; }
.choice__control .icon { width: 1.3rem; height: 1.3rem; }
.choice input:checked + .choice__control { background: var(--color-brand); border-color: var(--color-brand); color: var(--color-white); }
.choice__title { display: block; color: var(--color-brand); font-weight: 700; font-size: 1.2rem; line-height: 1.15; overflow-wrap: anywhere; }
.choice__description { display: block; margin-top: .5rem; color: var(--color-muted); font-size: 1rem; line-height: 1.3; }
.topic-options { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .9rem; }
.choice--topic { display: grid; grid-template-columns: 1.65rem 4rem minmax(0,1fr); align-items: start; gap: 1rem; padding: 1.25rem; }
.choice--topic .choice__control { margin-top: .6rem; }
.choice--topic .choice__title { font-size: 1.1rem; }
.selection-offer { display: grid; grid-template-columns: 4rem 1fr auto; gap: 1.5rem; align-items: center; margin-top: 1rem; border-radius: var(--radius-card); padding: 1.5rem; background: var(--color-blush); }
.selection-offer > .icon { color: var(--color-brand); width: 3.5rem; height: 3.5rem; }
.selection-offer h2 { color: var(--color-brand); font-size: 1.6rem; }
.selection-offer p { color: var(--color-muted); margin-top: .4rem; font-size: 1rem; }
.selection-summary { display: block; color: var(--color-brand); margin-top: .7rem; font-size: .95rem; font-weight: 700; }

/* 13 · Kontaktband, Footer und Dialoge */
.contact-cta { position: relative; isolation: isolate; overflow: hidden; padding-block: 1.6rem; background: var(--color-brand); color: var(--color-white); }
.contact-cta::after { content: ""; position: absolute; z-index: -1; inset: -11rem -3rem -9rem auto; width: 34rem; border-radius: 50%; background: repeating-radial-gradient(ellipse at 70% 50%,transparent 0 1.6rem,rgb(254 254 254 / .08) 1.65rem 1.7rem); transform: rotate(-24deg); }
.contact-cta__inner { display: grid; grid-template-columns: 1.2fr 1.05fr auto; align-items: center; gap: 2rem; }
.contact-cta h2 { font-size: clamp(1.4rem, 2.15vw, 2.1rem); max-width: 28rem; line-height: 1.18; }
.contact-cta p { max-width: 26rem; font-size: 1.05rem; }
.contact-cta .button { min-width: 14rem; }
.contact-cta :focus-visible { outline-color: var(--color-white); }
.site-footer { background: linear-gradient(100deg,var(--color-white),var(--color-blush)); padding-block: 1.5rem; }
.site-footer__inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.site-footer .brand img { width: 7.5rem; height: 5.25rem; }
.site-footer__copyright { font-size: .95rem; color: var(--color-muted); }
.footer-nav { display: flex; align-items: center; gap: clamp(1rem, 2.5vw, 2.5rem); }
.footer-nav a, .footer-nav button { font-size: .95rem; color: var(--color-muted); background: none; border: 0; padding: .4rem 0; text-decoration: none; }
.footer-nav a:hover, .footer-nav button:hover { color: var(--color-brand); }
.footer-social { display: flex; align-items: center; gap: 1.5rem; }
.footer-social a, .footer-social button { display: block; padding: .4rem; color: var(--color-ink); border: 0; background: none; }
.footer-social .icon { width: 1.6rem; height: 1.6rem; }
.dialog { color: var(--color-ink); background: var(--color-white); border: 1px solid var(--color-line); border-radius: 1rem; width: min(42rem,calc(100% - 2rem)); max-height: calc(100dvh - 2rem); overflow: auto; padding: 2rem; box-shadow: 0 1rem 6rem rgb(0 0 0 / .15); }
.dialog::backdrop { background: rgb(23 43 57 / .5); }
.dialog h2 { color: var(--color-brand); margin-bottom: 1rem; }
.dialog__close { position: absolute; top: .65rem; right: .8rem; width: 2.5rem; height: 2.5rem; font-size: 1.6rem; background: transparent; border: 0; color: var(--color-brand); }
.dialog__notice { background: var(--color-blush); border-radius: .5rem; padding: 1rem; margin-block: 1rem; font-size: 1rem; }
.dialog textarea { display: block; width: 100%; min-height: 12rem; margin-top: .6rem; border: 1px solid var(--color-line); border-radius: .5rem; background: var(--color-white); color: var(--color-ink); padding: 1rem; resize: vertical; }
.dialog label { display: block; font-weight: 700; margin-top: 1rem; }
.dialog .actions { gap: .75rem; margin-top: 1rem; }
.dialog__feedback { min-height: 1.5em; margin-top: 1rem; color: var(--color-brand); }

/* 14 · Tablet: Inhalt bleibt vollständig, nur Anordnung ändert sich */
@media (max-width: 74.99rem) {
  :root { --header-height: 7rem; }
  .primary-nav { gap: 1rem; }
  .primary-nav > a { font-size: .875rem; }
  .primary-nav .button { font-size: .875rem; padding-inline: 1rem; }
  .brand img { width: 9rem; height: 6rem; }
  .hero { min-height: 35rem; }
  .hero--home, .hero--emotional { min-height: 40rem; }
  .hero__content { width: 56%; }
  .hero--activities .hero__content { width: 60%; }
  .image-card__content, .field-card .image-card__content { padding: 1.5rem; }
  .image-card { min-height: 21rem; }
  .field-card { min-height: 0; }
  .field-grid { grid-template-rows: minmax(19rem,auto) minmax(18rem,auto) minmax(17rem,auto); }
  .field-card--selling .image-card__content { padding-bottom: 17rem; }
  .feature-strip__list { gap: 1rem; }
  .feature { gap: .75rem; }
  .feature + .feature { padding-left: 1rem; }
  .feature .icon { width: 2.25rem; height: 2.25rem; }
  .feature__text { font-size: .9rem; }
  .industry-list { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .focus-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .emotional-intro { grid-template-columns: 1fr; }
  .contact-cta__inner { gap: 1.2rem; }
  .site-footer__inner { gap: 1.2rem; }
  .footer-nav { gap: 1rem; }
}

@media (max-width: 61.99rem) {
  .site-header__inner { align-items: flex-start; }
  .js .nav-toggle { display: block; margin-top: .5rem; }
  .js .primary-nav { display: none; position: absolute; left: var(--gutter); right: var(--gutter); top: calc(var(--header-height) - .5rem); padding: 1.25rem; background: var(--color-white); border: 1px solid var(--color-line); border-radius: .75rem; box-shadow: 0 .5rem 2rem rgb(23 43 57 / .1); }
  .js [data-menu-open="true"] .primary-nav { display: flex; flex-direction: column; align-items: stretch; gap: .5rem; }
  .primary-nav > a { font-size: 1rem; }
  html:not(.js) .site-header { height: auto; margin-bottom: 0; background: var(--color-blush); }
  html:not(.js) .site-header__inner { flex-wrap: wrap; padding-bottom: 1rem; }
  html:not(.js) .primary-nav { flex-wrap: wrap; padding: 0; }
  .activity-grid { gap: 2rem 1.5rem; }
  .activity-card { grid-template-columns: 1.15fr 1fr; }
  .activity-card__number { font-size: 4rem; }
  .choice--topic { grid-template-columns: 1.4rem 2.8rem 1fr; gap: .6rem; padding: .9rem; }
  .choice--topic .icon-circle { width: 2.8rem; height: 2.8rem; }
  .choice--topic .icon-circle .icon { width: 2rem; height: 2rem; }
  .process__inner { grid-template-columns: 1fr; gap: 1rem; }
  .process__intro h2 { max-width: none; }
  .contact-cta__inner { grid-template-columns: 1.2fr 1fr; }
  .contact-cta__inner > p { display: none; }
  .contact-cta .button { justify-self: end; }
  .site-footer__inner { flex-wrap: wrap; }
  .footer-nav { margin-left: auto; }
  .footer-social { margin-left: auto; }
  .emotional-details { gap: 1.25rem; }
  .package-card { padding: 1.15rem; gap: .8rem; }
  .package-card > .icon { width: 2rem; height: 2rem; }
}

/* 15 · Mobil: spezifische Bildanordnung statt pauschalem Karten-Stack */
@media (max-width: 47.99rem) {
  :root { --header-height: 6rem; --gutter: 1.25rem; --text-body: 1rem; --text-h1: clamp(1.75rem,6vw,2.65rem); --text-h2: 1.8rem; --text-h3: 1.4rem; --section-space: 1.4rem; }
  .brand img { width: 7.5rem; height: 5.35rem; }
  .site-header__inner { padding-top: .6rem; }
  .hero, .hero--home, .hero--emotional { min-height: 30rem; padding-top: calc(var(--header-height) + 1rem); padding-bottom: 1.75rem; }
  .hero--home { --hero-image-top: 7.25rem; padding-block: var(--hero-image-top) 0; }
  .hero--home > .container { padding-block: 1.5rem; }
  .hero__content, .hero--home .hero__content { width: 60%; }
  .hero--activities .hero__content { width: 62%; }
  .hero__media, .hero--home .hero__media { top: 5.75rem; width: 62%; }
  .hero--home .hero__media { top: var(--hero-image-top); }
  .hero__media img { object-fit: cover; object-position: 47% top; }
  .hero__media::after { background: linear-gradient(90deg,var(--color-blush) 0%,rgb(249 238 236 / .92) 8%,rgb(249 238 236 / .1) 44%,transparent 60%); }
  .hero__lead, .hero--emotional .hero__lead { font-size: .95rem; margin-top: 1rem; }
  .hero--home h1 { font-size: clamp(1.8rem,6vw,2.8rem); }
  .hero--method h1, .hero--activities h1 { font-size: clamp(1.5rem,4.8vw,2.2rem); }
  .hero--emotional h1 { font-size: clamp(1.65rem,5.5vw,2.6rem); }
  .hero--emotional .hero__media { top: 6rem; width: 63%; }
  .hero--vita .hero__media { right: 0; width: 59%; }
  .hero--vita { --hero-image-top: 7.25rem; padding-block: var(--hero-image-top) 0; }
  .hero--vita > .container { padding-block: 1.5rem; }
  .hero--vita h1 { font-size: clamp(1.25rem, 5vw, 2.25rem); }
  .hero--method { --hero-image-top: 7.25rem; padding-block: var(--hero-image-top) 0; }
  .hero--method > .container { padding-block: 1.5rem; }
  .hero--activities { --hero-image-top: 7.25rem; padding-block: var(--hero-image-top) 0; }
  .hero--activities > .container { padding-block: 1.5rem; }
  .hero--development { --hero-image-top: 7.25rem; padding-block: var(--hero-image-top) 0; }
  .hero--development > .container { padding-block: 1.5rem; }
  .page--detail .hero--emotional { --hero-image-top: 7.25rem; padding-block: var(--hero-image-top) 0; }
  .page--detail .hero--emotional > .container { padding-block: 1.5rem; }
  .activities-heading--desktop { display: none; }
  .activities-heading--mobile { display: inline; }
  .hero .eyebrow { font-size: .68rem; letter-spacing: .09em; }
  .actions { gap: .8rem; margin-top: 1.2rem; }
  .hero .button { min-height: 2.6rem; font-size: .875rem; padding: .5rem 1rem; gap: .6rem; }
  .hero .text-link { font-size: .875rem; gap: .5rem; }
  .feature-strip { padding-block: 1.1rem; }
  .feature-strip__list, .feature-strip--five .feature-strip__list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
  .feature + .feature { padding-left: 0; border-left: 0; }
  .feature__text { font-size: .875rem; }
  .feature-strip--metrics .feature-strip__list { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .feature-strip--metrics .feature { flex-direction: column; align-items: flex-start; gap: .45rem; }
  .feature-strip--metrics .feature__text { font-size: .8rem; }
  .feature__value { font-size: 1.1rem; }
  .feature-strip--method .feature { padding: .65rem; border-radius: .5rem; background: rgb(254 254 254 / .6); }
  .feature-strip--method .feature__text { overflow-wrap: anywhere; }
  .home-grid, .method-grid, .activity-grid { grid-template-columns: 1fr; }
  .home-grid .image-card { min-height: 17rem; }
  .home-grid .image-card__content { width: 65%; padding: 1.5rem; }
  .home-grid .image-card__media { width: 62%; }
  .home-grid .home-card--methodology .image-card__media, .home-grid .home-card--development .image-card__media, .home-grid .home-card--vita .image-card__media { width: 62%; }
  .home-grid .image-card h2 { font-size: 1.6rem; }
  .home-grid .image-card p { font-size: .95rem; margin-top: .8rem; }
  .image-card__number { font-size: 1.5rem; }
  .about { grid-template-columns: 1fr; gap: 1.25rem; }
  .about__image { max-height: 23rem; object-position: center 33%; }
  .method-card { display: grid; grid-template-columns: 46% 54%; min-height: 12.5rem; background: var(--color-blush); }
  .method-card::after { display: none; }
  .method-card .image-card__media { position: relative; z-index: auto; inset: auto; width: 100%; height: 100%; }
  .method-card .image-card__media { -webkit-mask-image: none; mask-image: none; }
  .method-card .image-card__media img { object-fit: cover; object-position: center; }
  .page--methodik .method-card .image-card__media { width: 100%; }
  .page--methodik .method-card::after { display: none; }
  .method-card .image-card__content { width: 100%; margin: 0; padding: 1.2rem; }
  .method-card h2, .method-card--reverse h2 { color: var(--color-brand); font-size: clamp(1.05rem,2.8vw,1.4rem); }
  .method-card p, .method-card--reverse p { color: var(--color-ink); font-size: .9rem; padding-top: .85rem; }
  .method-card__arrow { color: var(--color-brand); align-self: flex-end; margin-top: .5rem; }
  .field-grid { grid-template-columns: 1fr; grid-template-rows: none; }
  .field-card { grid-area: auto; min-height: 16rem; }
  .field-card .image-card__content, .field-card--selling .image-card__content, .field-card--explorer .image-card__content { width: 59%; padding: 1.5rem; justify-content: flex-start; }
  .field-card h2 { font-size: 1.45rem; }
  .field-card p { font-size: .95rem; margin-top: .9rem; }
  .field-card .image-card__media, .field-card--selling .image-card__media { inset: 0 0 0 auto; width: 66%; height: 100%; }
  .field-card--selling .image-card__media { -webkit-mask-image: linear-gradient(90deg,transparent,black 20%); mask-image: linear-gradient(90deg,transparent,black 20%); }
  .field-card--leadership .image-card__media { width: 55%; }
  .field-card--selling h2 { max-width: none; }
  .field-card--selling::after { background: linear-gradient(90deg,var(--color-blush) 24%,rgb(249 238 236 / .98) 40%,transparent 79%); }
  .field-card--explorer::after { background: linear-gradient(90deg,rgb(25 26 18 / .93) 15%,rgb(25 26 18 / .68) 55%,transparent 90%); }
  .field-card--explorer .image-card__media { width: 100%; }
  .field-card--explorer .image-card__link { margin-top: auto; }
  .activity-card { grid-template-columns: 1.1fr 1fr; gap: .8rem; }
  .activity-card__number { font-size: 3.6rem; }
  .activity-card h2 { font-size: 1.35rem; }
  .activity-card p { font-size: .95rem; }
  .activity-card__media { margin-top: .5rem; }
  .activity-card__media img { width: 100%; }
  .question-banner { position: relative; isolation: isolate; display: block; min-height: 12rem; }
  .question-banner__children { position: absolute; z-index: -1; right: 0; inset-block: 0; height: 100%; min-height: 0; width: 55%; object-fit: cover; }
  .question-banner::after { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,var(--color-blush) 36%,rgb(249 238 236 / .85) 48%,transparent 72%); }
  .question-banner__man { display: none; }
  .question-banner__copy { width: 63%; padding: 1.3rem var(--gutter); }
  .question-banner h2 { font-size: 1.45rem; }
  .question-banner p { font-size: 1.15rem; }
  .question-banner .button { font-size: .8rem; }
  .process__steps { grid-template-columns: 1fr; gap: .55rem; }
  .process__step { display: grid; grid-template-columns: 3rem 1.3rem 6.5rem 1fr; gap: .65rem; align-items: center; padding: .75rem; background: var(--color-blush); border-radius: .6rem; }
  .process__step::after { display: none; }
  .process__step .icon-circle { width: 3rem; height: 3rem; background: var(--color-white); }
  .process__step .icon { width: 2.2rem; height: 2.2rem; }
  .process__number { margin-top: 0; }
  .process h3 { font-size: 1rem; }
  .process__step p { margin-top: 0; font-size: .8rem; }
  .testimonial__content { width: 78%; padding-block: 1.5rem; gap: .8rem; }
  .testimonial blockquote p { font-size: 1rem; }
  .testimonial cite { font-size: .85rem; }
  .testimonial__content > .icon { width: 2rem; height: 2rem; }
  .vita-grid { grid-template-columns: 1fr; }
  .page--vita .vita-topics { padding: 1.25rem; border-radius: var(--radius-card); background: var(--color-blush); }
  .focus-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .focus-item { min-height: 5rem; font-size: .85rem; }
  .timeline-panel__content { width: 80%; padding: 1.25rem; }
  .timeline-panel__image { width: 46%; }
  .timeline-panel::after { background: linear-gradient(90deg,var(--color-blush) 40%,rgb(249 238 236 / .94) 55%,rgb(249 238 236 / .55) 75%,transparent 100%); }
  .timeline li { grid-template-columns: 4.7rem 1fr; font-size: .9rem; gap: .65rem; }
  .industry-list { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .industry-item { font-size: .8rem; flex-direction: column; align-items: flex-start; }
  .value-grid { grid-template-columns: 1fr; }
  .value-card__content { width: 86%; }
  .panel { padding: 1.25rem; }
  .emotional-intro { gap: 1.2rem; }
  .principles { gap: .65rem; }
  .principle { padding: 1rem .8rem; }
  .principle h3 { font-size: 1.05rem; }
  .principle p { font-size: .9rem; }
  .principle > .icon { width: 3.3rem; height: 3.3rem; }
  .emotional-details { grid-template-columns: 1fr; }
  .benefits-panel { padding: 1.4rem; }
  .audience-panel { padding-block: .5rem; }
  .package-section > h2 { font-size: 1.6rem; }
  .package-grid { grid-template-columns: 1fr; }
  .package-card { padding: 1.1rem 1.3rem; }
  .package-card > .icon { width: 3rem; height: 3rem; }
  .package-card .text-link { margin-top: .65rem; }
  .emotion-quote__content { width: 75%; gap: .7rem; }
  .emotion-quote blockquote { font-size: 1.15rem; }
  .emotion-quote__content > p { display: none; }
  .emotion-quote__content > .icon { width: 2.5rem; height: 2.5rem; }
  .selection-step__heading { gap: 1rem; }
  .selection-step__number { font-size: 4rem; }
  .selection-step h2 { font-size: 1.7rem; }
  .selection-step__title { font-size: 1.7rem; }
  .selection-step__description { font-size: .95rem; }
  .selection-step__heading p { font-size: .95rem; }
  .activity-options { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .8rem; }
  .choice__body { grid-template-columns: 1.5rem 1fr; gap: .6rem; padding: .75rem .2rem; }
  .choice__title { font-size: 1.05rem; }
  .choice__description { font-size: .9rem; }
  .activity-options .choice__description { display: none; }
  .topic-options { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; }
  .choice--topic { grid-template-columns: 1.3rem 1fr; gap: .6rem; padding: .85rem; }
  .choice--topic > .icon-circle { display: none; }
  .choice__control { width: 1.4rem; height: 1.4rem; }
  .choice--topic .choice__control { margin-top: 0; }
  .choice--topic .choice__title { font-size: 1rem; }
  .selection-offer { grid-template-columns: 2.5rem 1fr; gap: 1rem; padding: 1.15rem; }
  .selection-offer > .icon { width: 2.5rem; height: 2.5rem; }
  .selection-offer .button { grid-column: 2; justify-self: start; }
  .selection-offer h2 { font-size: 1.35rem; }
  .contact-cta__inner { display: flex; flex-direction: column; text-align: center; gap: 1rem; }
  .contact-cta h2 { max-width: 30rem; }
  .contact-cta .button { min-width: 14rem; }
  .site-footer__inner { justify-content: center; gap: 1.2rem 2rem; }
  .footer-nav { order: 3; width: 100%; margin-left: 0; justify-content: center; flex-wrap: wrap; gap: .8rem 1.5rem; }
  .footer-social { order: 4; margin-left: 0; }
  .site-footer__copyright { font-size: .8rem; }
  .site-footer .brand img { width: 6rem; height: 4.4rem; }
}

/* Kleine Telefone: keine abgeschnittenen deutschen Wörter oder festen Texthöhen. */
@media (max-width: 26.99rem) {
  :root { --gutter: 1rem; }
  .hero__content, .hero--home .hero__content { width: 65%; }
  .hero--activities .hero__content { width: 66%; }
  .hero__media { width: 59%; }
  .hero__media img { object-position: 42% center; }
  .hero .button { padding-inline: .8rem; font-size: .8rem; }
  .hero__lead, .hero--emotional .hero__lead { font-size: .875rem; }
  .home-grid .image-card__content { width: 73%; padding: 1.25rem; }
  .home-grid .image-card h2 { font-size: 1.4rem; }
  .home-grid .image-card p { font-size: .9rem; }
  .method-card { grid-template-columns: 43% 57%; min-height: 13rem; }
  .method-card .image-card__content { padding: 1rem .85rem; }
  .method-card .image-card__media img { object-fit: contain; }
  .method-card h2 { font-size: 1.05rem; }
  .field-card .image-card__content { width: 66%; padding: 1.25rem; }
  .field-card h2 { font-size: 1.3rem; }
  .field-card p { font-size: .9rem; }
  .activity-card { grid-template-columns: 1.2fr 1fr; gap: .5rem; }
  .activity-card h2 { font-size: 1.15rem; }
  .activity-card p { font-size: .875rem; }
  .activity-card .text-link { font-size: .8rem; }
  .question-banner__copy { width: 74%; }
  .process__step { grid-template-columns: 2.6rem 1.2rem 1fr; gap: .55rem; }
  .process__step p { grid-column: 3; }
  .process__step .icon-circle { grid-row: span 2; width: 2.6rem; height: 2.6rem; }
  .process__step .process__number { grid-row: span 2; }
  .focus-item { gap: .55rem; padding: .8rem .6rem; }
  .focus-item .icon { width: 1.8rem; height: 1.8rem; }
  .timeline-panel__content { width: 93%; }
  .timeline-panel__image { opacity: .45; }
  .timeline li { grid-template-columns: 4.3rem 1fr; }
  .page--vita .focus-grid { grid-template-columns: 1fr; }
  .page--vita .feature-strip--metrics .feature-strip__list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .page--vita .feature-strip--metrics .feature:last-child { grid-column: 1 / -1; }
  .page--vita .timeline-panel__content { width: 100%; }
  .page--vita .timeline-panel { display: flex; flex-direction: column; }
  .page--vita .timeline-panel__content { order: -1; }
  .page--vita .timeline-panel__image { position: relative; inset: auto; z-index: auto; display: block; width: 100%; height: auto; opacity: 1; }
  .page--vita .timeline-panel::after { display: none; }
  .principles { gap: .45rem; }
  .principle { padding: .9rem .6rem; }
  .principle h3 { font-size: .9rem; overflow-wrap: anywhere; }
  .principle p { font-size: .8rem; }
  .benefits-panel .check-list { max-width: 100%; }
  .check-list li, .audience-list li { font-size: .9rem; }
  .audience-panel .dragonfly { width: 29%; }
  .selection-step h2 { font-size: 1.4rem; }
  .selection-step__title { font-size: 1.4rem; }
  .selection-step__number { font-size: 3.4rem; }
  .choice__title { font-size: .9rem; }
  .choice--topic { gap: .45rem; padding: .7rem; }
  .choice--topic .choice__title { font-size: .9rem; }
  .choice--topic .choice__description { font-size: .8rem; }
  .selection-offer .button { grid-column: 1 / -1; justify-self: center; }
  .dialog { padding: 1.5rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .button, .image-card .icon { transition: none; }
}
@media print {
  .site-header, .site-footer, .contact-cta, .nav-toggle, .dialog { display: none; }
  .hero { min-height: 0; padding-top: 2rem; }
  .hero__media { top: 0; }
  body { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  a { text-decoration: none; }
  .image-card, .activity-card, .panel, .choice { break-inside: avoid; }
}
