/* V204: photographic editorial about page. No shared header/footer selectors. */
.about-profile-page { --ap-ink:#330e13; --ap-muted:#695b56; --ap-paper:#f5f3ee; --ap-line:#d9cdc1; background:var(--ap-paper); }
.about-profile-page .ap-wrap { width:min(1232px,calc(100% - 96px)); margin-inline:auto; }
.about-profile-page .ap-section { padding-block:100px; }
.about-profile-page .ap-simple-origin h2 { max-width:820px; }
.about-profile-page .ap-eyebrow { font:600 12px/1.5 Montserrat,Arial,sans-serif; letter-spacing:.15em; text-transform:uppercase; margin:0 0 23px; }
.about-profile-page h1,.about-profile-page .ap-section h2 { font-family:Cormorant,Georgia,serif; font-weight:500; letter-spacing:-.025em; text-wrap:balance; overflow-wrap:normal; hyphens:manual; }
.about-profile-page .ap-section h2 { font-size:clamp(42px,4.5vw,62px); line-height:1.04; margin:0 0 27px; }
.about-profile-page .ap-section h3 { font:600 31px/1.12 Cormorant,Georgia,serif; letter-spacing:-.015em; margin:0 0 15px; }
.about-profile-page .ap-section p { font-size:18px; line-height:1.65; margin:0 0 22px; }
.about-profile-page .ap-section .ap-eyebrow { font-size:12px; line-height:1.5; }
.about-profile-page .ap-intro { color:var(--ap-muted); max-width:59ch; }
.about-profile-page .ap-text-link { display:inline-block; font:600 15px/1.6 Montserrat,Arial,sans-serif; text-decoration:underline; text-underline-offset:6px; text-decoration-thickness:1px; }
.about-profile-page .ap-text-link:hover { color:#a13731; }
.about-profile-page .ap-hero { background:#2e0d12; color:var(--ap-paper); overflow:hidden; position:relative; isolation:isolate; }
.about-profile-page .ap-hero-photo { position:absolute; inset:0 0 0 auto; width:62%; z-index:-2; }
.about-profile-page .ap-hero-photo img { width:100%; height:100%; object-fit:cover; object-position:62% 40%; }
.about-profile-page .ap-hero-photo figcaption { position:absolute; right:32px; bottom:21px; color:#fff; font:400 12px/1.5 Montserrat,Arial,sans-serif; text-shadow:0 1px 8px #000; }
.about-profile-page .ap-hero::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#2e0d12 0%,#2e0d12 29%,#2e0d12ed 40%,#2e0d1270 57%,#2e0d1200 78%); z-index:-1; }
.about-profile-page .ap-hero-grid { min-height:640px; display:flex; align-items:center; padding-block:70px 80px; }
.about-profile-page .ap-hero-copy { width:57%; min-width:0; }
.about-profile-page .ap-hero h1 { font-size:clamp(56px,5.4vw,76px); line-height:1.01; margin:0 0 26px; max-width:none; }
.about-profile-page .ap-hero-lead { font:400 18px/1.65 Montserrat,Arial,sans-serif; color:#eee2da; max-width:44ch; margin:0 0 31px; }
.about-profile-page .ap-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:25px; }
.about-profile-page .ap-hero-actions .button { width:fit-content; padding:20px 29px; }
.about-profile-page .ap-hero .ap-text-link { color:#f5f3ee; }
.about-profile-page .ap-page-nav { background:#fff; border-bottom:1px solid var(--ap-line); }
.about-profile-page .ap-page-nav .ap-wrap { display:flex; justify-content:space-between; align-items:center; gap:28px; padding-block:24px; }
.about-profile-page .ap-page-nav a { font:500 14px/1.5 Montserrat,Arial,sans-serif; display:flex; gap:17px; align-items:center; }
.about-profile-page .ap-page-nav a::before { content:''; width:27px; height:1px; background:var(--ap-ink); }
.about-profile-page .ap-page-nav a:hover { color:#a13731; }
.about-profile-page .ap-experience { background:var(--ap-paper); padding-block:clamp(32px,5vw,64px); }
.about-profile-page .ap-founder-story { display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:90px; align-items:center; }
.about-profile-page .ap-founder-photo { position:relative; margin:0; }
.about-profile-page .ap-founder-photo img { width:100%; aspect-ratio:1/1.06; object-fit:cover; object-position:61% center; border-radius:3px; }
.about-profile-page .ap-founder-photo figcaption { padding-top:18px; font:600 16px/1.5 Montserrat,Arial,sans-serif; }
.about-profile-page .ap-founder-photo figcaption span { display:block; font:400 13px/1.5 Montserrat,Arial,sans-serif; color:var(--ap-muted); margin-top:3px; }
.about-profile-page .ap-stations { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:67px; border-top:1px solid var(--ap-line); padding-top:32px; gap:42px; }
.about-profile-page .ap-station { position:relative; }
.about-profile-page .ap-station::before { content:''; display:block; width:8px; height:8px; border:1px solid var(--ap-ink); border-radius:50%; background:#fff; position:absolute; top:-37px; left:0; }
.about-profile-page .ap-station h3 { font-size:27px; }
.about-profile-page .ap-station p { color:var(--ap-muted); font-size:16px; margin-bottom:0; }
.about-profile-page .ap-section-heading { margin-bottom:46px; max-width:830px; }
.about-profile-page .ap-section-heading p:last-child { margin-bottom:0; }
.about-profile-page .ap-team { background:var(--ap-paper); }
.about-profile-page .ap-team-grid { display:grid; gap:48px; }
.about-profile-page .ap-person { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:70px; align-items:center; min-width:0; background:#fff; }
.about-profile-page .ap-person:nth-child(even) { grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); }
.about-profile-page .ap-person:nth-child(even) .ap-person-photo { order:2; }
.about-profile-page .ap-person:nth-child(even) .ap-person-copy { padding:40px 0 40px 48px; }
.about-profile-page .ap-person-photo { height:100%; margin:0; min-height:395px; background:#e7e5df; }
.about-profile-page .ap-person-photo img { width:100%; height:100%; aspect-ratio:1.1/1; object-fit:cover; object-position:60% 30%; }
.about-profile-page #team-lutz .ap-person-photo img { object-fit:cover; object-position:center; }
.about-profile-page .ap-person-copy { padding:40px 48px 40px 0; min-width:0; }
.about-profile-page .ap-person h3 { font-size:40px; margin-bottom:12px; }
.about-profile-page .ap-person-copy p { font-size:18px; line-height:1.65; color:var(--ap-muted); margin-bottom:18px; }
.about-profile-page .ap-person-copy .ap-person-role { font:600 14px/1.55 Montserrat,Arial,sans-serif; color:var(--ap-ink); margin-bottom:8px; }
.about-profile-page .ap-person-copy .ap-person-degree { font:400 14px/1.5 Montserrat,Arial,sans-serif; color:var(--ap-muted); margin-bottom:23px; }
.about-profile-page .ap-person details { margin-top:23px; border-top:1px solid var(--ap-line); padding-top:15px; }
.about-profile-page .ap-person summary { cursor:pointer; font:600 14px/1.5 Montserrat,Arial,sans-serif; padding:5px 0; }
.about-profile-page .ap-person details[open] summary { margin-bottom:14px; }
.about-profile-page .ap-person summary span[aria-hidden] { display:none; }
.about-profile-page .ap-work { background:var(--ap-ink); color:var(--ap-paper); }
.about-profile-page .ap-work .ap-intro { color:#decfc6; }
.about-profile-page .ap-work-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:80px; align-items:center; }
.about-profile-page .ap-work-photo { align-self:stretch; }
.about-profile-page .ap-work-photo img { width:100%; height:100%; aspect-ratio:1/1.1; object-fit:cover; object-position:60% center; border-radius:3px; }
.about-profile-page .ap-principle { padding-block:27px; border-bottom:1px solid #f5f3ee2f; }
.about-profile-page .ap-principle:first-child { padding-top:0; }
.about-profile-page .ap-principle:last-child { border:0; padding-bottom:0; }
.about-profile-page .ap-principle h3 { font-size:33px; display:flex; gap:18px; }
.about-profile-page .ap-principle h3::before { content:'↗'; font:400 22px/1.2 Montserrat,Arial,sans-serif; color:#de9b84; }
.about-profile-page .ap-principle p { color:#decfc6; margin-bottom:0; }
.about-profile-page .ap-proof { background:#fff; }
.about-profile-page .ap-customer-proof { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); align-items:center; gap:70px; padding-bottom:55px; border-bottom:1px solid var(--ap-line); }
.about-profile-page .ap-customer-proof figure img { width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; border-radius:3px; }
.about-profile-page .ap-customer-proof blockquote { font:500 34px/1.18 Cormorant,Georgia,serif; margin:0 0 23px; letter-spacing:-.01em; }
.about-profile-page .ap-customer-proof .ap-quote-name { font:600 14px/1.5 Montserrat,Arial,sans-serif; margin-bottom:14px; }
.about-profile-page .ap-proof-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:80px; align-items:center; padding-top:55px; }
.about-profile-page .ap-teaching-photo { display:grid; grid-template-columns:170px minmax(0,1fr); gap:25px; align-items:start; }
.about-profile-page .ap-teaching-photo img { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; border-radius:3px; }
.about-profile-page .ap-teaching-photo figcaption p,.about-profile-page .ap-proof-note p { font:400 16px/1.65 Montserrat,Arial,sans-serif; color:var(--ap-muted); }
.about-profile-page .ap-proof h3 { font-size:28px; }
.about-profile-page .ap-proof-note { display:grid; grid-template-columns:48px minmax(0,1fr); gap:23px; align-items:start; }
.about-profile-page .ap-proof-note > img { margin-top:4px; }
.about-profile-page .ap-closing { background:var(--ap-paper); text-align:center; position:relative; overflow:hidden; }
.about-profile-page .ap-closing::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("assets/markenzeichen-original.svg") center / min(78%, 560px) auto no-repeat;
  opacity: .06;
  pointer-events: none;
}
.about-profile-page .ap-closing .ap-wrap { position:relative; }
.about-profile-page .ap-closing h2 { max-width:20ch; margin-inline:auto; }
.about-profile-page .ap-closing p:not(.ap-eyebrow) { color:var(--ap-muted); max-width:55ch; margin:0 auto 32px; }
.about-profile-page .ap-closing a.button.light { --cta-background:linear-gradient(110deg,#330e13,#59353d); background:var(--cta-background); color:var(--ap-paper); border-color:var(--ap-ink); }
.about-profile-page .ap-closing a.button.light:hover { background:linear-gradient(110deg,#42141c,#68434b); color:#fff; }
.about-profile-page [id] { scroll-margin-top:110px; }
@media(max-width:1100px) {
 .about-profile-page .ap-hero-grid { min-height:610px; }
 .about-profile-page .ap-hero-copy { width:59%; }
 .about-profile-page .ap-hero h1 { font-size:67px; }
 .about-profile-page .ap-founder-story { gap:55px; }
 .about-profile-page .ap-person,.about-profile-page .ap-person:nth-child(even) { gap:40px; }
 .about-profile-page .ap-person-copy { padding-right:32px; }
 .about-profile-page .ap-person:nth-child(even) .ap-person-copy { padding-left:32px; }
 .about-profile-page .ap-work-grid,.about-profile-page .ap-proof-grid { gap:45px; }
 .about-profile-page .ap-teaching-photo { grid-template-columns:1fr; }
}
@media(max-width:850px) {
 .about-profile-page .ap-wrap { width:calc(100% - 48px); }
 .about-profile-page .ap-section { padding-block:72px; }
 .about-profile-page .ap-hero-grid { min-height:540px; padding-block:58px; }
 .about-profile-page .ap-hero-copy { width:63%; }
 .about-profile-page .ap-hero h1 { font-size:57px; }
 .about-profile-page .ap-hero-lead { font-size:17px; }
 .about-profile-page .ap-hero::after { background:linear-gradient(90deg,#2e0d12 0%,#2e0d12eb 35%,#2e0d12a0 65%,#2e0d1220 100%); }
 .about-profile-page .ap-page-nav .ap-wrap { gap:20px; }
 .about-profile-page .ap-page-nav a { font-size:13px; gap:10px; }
 .about-profile-page .ap-page-nav a::before { width:15px; }
 .about-profile-page .ap-founder-story { gap:35px; }
 .about-profile-page .ap-stations { gap:25px; margin-top:53px; }
 .about-profile-page .ap-station h3 { font-size:25px; }
 .about-profile-page .ap-station p { font-size:16px; }
 .about-profile-page .ap-person,.about-profile-page .ap-person:nth-child(even) { gap:28px; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); }
 .about-profile-page .ap-person-photo { min-height:340px; }
 .about-profile-page .ap-person h3 { font-size:34px; }
 .about-profile-page .ap-person-copy p { font-size:17px; }
 .about-profile-page .ap-person-copy { padding:30px 26px 30px 0; }
 .about-profile-page .ap-person:nth-child(even) .ap-person-copy { padding:30px 0 30px 26px; }
 .about-profile-page .ap-work-grid { gap:35px; }
 .about-profile-page .ap-customer-proof { gap:35px; }
 .about-profile-page .ap-customer-proof blockquote { font-size:30px; }
 .about-profile-page .ap-proof-grid { gap:35px; }
}
@media(max-width:600px) {
 .about-profile-page .ap-wrap { width:calc(100% - 44px); }
 .about-profile-page .ap-section { padding-block:59px; }
 .about-profile-page .ap-section h2 { font-size:42px; line-height:1.04; margin-bottom:23px; }
 .about-profile-page .ap-section h3 { font-size:29px; }
 .about-profile-page .ap-section p { font-size:17px; line-height:1.65; }
 .about-profile-page .ap-section .ap-eyebrow { font-size:12px; }
 .about-profile-page .ap-hero-photo { position:relative; inset:auto; width:100%; z-index:0; }
 .about-profile-page .ap-hero-photo img { height:auto; aspect-ratio:3/2; object-position:center; }
 .about-profile-page .ap-hero-photo figcaption { right:20px; bottom:13px; font-size:11px; }
 .about-profile-page .ap-hero::after { display:none; }
 .about-profile-page .ap-hero-grid { min-height:0; padding-block:30px 36px; }
 .about-profile-page .ap-hero-copy { width:100%; }
 .about-profile-page .ap-hero h1 { font-size:46px; max-width:none; line-height:1.02; margin-bottom:22px; }
 .about-profile-page .ap-hero-lead { font-size:17px; line-height:1.6; margin-bottom:24px; }
 .about-profile-page .ap-hero-actions { gap:20px; }
 .about-profile-page .ap-hero-actions .button { font-size:15px; min-height:54px; padding:17px 20px; width:fit-content; }
 .about-profile-page .ap-page-nav .ap-wrap { flex-wrap:wrap; justify-content:flex-start; gap:10px 24px; padding-block:19px; }
 .about-profile-page .ap-page-nav a { font-size:13px; }
 .about-profile-page .ap-page-nav a::before { display:none; }
 .about-profile-page .ap-founder-story { grid-template-columns:1fr; gap:28px; }
 .about-profile-page .ap-founder-photo { max-width:400px; }
 .about-profile-page .ap-founder-photo img { aspect-ratio:4/3; }
 .about-profile-page .ap-founder-story > header { order:-1; }
 .about-profile-page .ap-stations { grid-template-columns:1fr; gap:28px; border-top:0; padding-top:0; margin-top:35px; }
 .about-profile-page .ap-station { border-left:1px solid var(--ap-line); padding-left:25px; }
 .about-profile-page .ap-station::before { top:8px; left:-5px; }
 .about-profile-page .ap-station p { font-size:17px; }
 .about-profile-page .ap-team-grid { gap:30px; }
 .about-profile-page .ap-person,.about-profile-page .ap-person:nth-child(even) { grid-template-columns:1fr; gap:0; }
 .about-profile-page .ap-person:nth-child(even) .ap-person-photo { order:0; }
 .about-profile-page .ap-person-photo { min-height:0; }
 .about-profile-page .ap-person-photo img { height:auto; aspect-ratio:3/2; }
 .about-profile-page .ap-person-copy,.about-profile-page .ap-person:nth-child(even) .ap-person-copy { padding:27px 25px 30px; }
 .about-profile-page .ap-person h3 { font-size:35px; }
 .about-profile-page .ap-person-copy p { font-size:17px; }
 .about-profile-page .ap-person-copy .ap-person-role,.about-profile-page .ap-person-copy .ap-person-degree { font-size:14px; }
 .about-profile-page .ap-work-grid,.about-profile-page .ap-customer-proof,.about-profile-page .ap-proof-grid { grid-template-columns:1fr; gap:32px; }
 .about-profile-page .ap-work-photo img { height:auto; aspect-ratio:3/2; }
 .about-profile-page .ap-principle h3 { font-size:30px; }
 .about-profile-page .ap-proof-grid { padding-top:36px; }
 .about-profile-page .ap-teaching-photo { grid-template-columns:1fr; gap:20px; }
 .about-profile-page .ap-teaching-photo img { aspect-ratio:16/9; }
 .about-profile-page .ap-customer-proof { padding-bottom:36px; }
 .about-profile-page .ap-customer-proof blockquote { font-size:32px; }
 .about-profile-page .ap-customer-proof .ap-quote-name { font-size:14px; }
 .about-profile-page .ap-proof-note { gap:20px; }
 .about-profile-page .ap-proof-note p,.about-profile-page .ap-teaching-photo figcaption p { font-size:17px; }
 .about-profile-page .ap-closing .button { width:fit-content; max-width:100%; font-size:15px; padding:18px 22px; }
 .about-profile-page [id] { scroll-margin-top:90px; }
}
@media(max-width:360px) { .about-profile-page .ap-hero h1 { font-size:46px; } }

/* V205: compact introduction and clearer separation of roles and biographies. */
.about-profile-page .ap-hero-photo figcaption {
  padding: 5px 10px;
  border-radius: 4px;
  background: #241617de;
}
.about-profile-page .ap-person-copy > p:not([class]) {
  color: var(--ap-ink);
  font-weight: 550;
}
.about-profile-page .ap-simple-origin p { max-width:67ch; }
.about-profile-page .ap-simple-origin p:last-child { margin-bottom:0; }
@media (max-width:600px) {
  .about-profile-page .ap-hero-photo img {
    height: clamp(190px, 59vw, 310px);
    aspect-ratio: auto;
    object-position: center 38%;
  }
  .about-profile-page .ap-hero-grid { padding-block:24px 28px; }
  .about-profile-page .ap-hero h1 { font-size:clamp(36px, 10vw, 46px); margin-bottom:16px; }
  .about-profile-page .ap-hero-lead { margin-bottom:18px; }
  .about-profile-page .ap-hero-actions { gap:14px; }
}

.about-profile-page a[aria-current="page"] { text-decoration: underline; text-underline-offset: .25em; }

/* Keep scaled portraits inside their frames. */
.about-profile-page .ap-person-photo { overflow: hidden; border-radius:9px; }

.about-profile-page .ap-values {
  color:#fbf5ec;
  background:radial-gradient(ellipse at 50% 15%, #532731, #2e0d12 76%);
}
.about-profile-page .ap-values h2 { text-align:center; margin-bottom:42px; }
.about-profile-page .ap-values-layout { position:relative; }
.about-profile-page .ap-values-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  padding:0;
  margin:0;
  list-style:none;
}
.about-profile-page .ap-values-grid li {
  background:#fff7ec09;
  border:1px solid #e7cdb85c;
  border-radius:16px;
  padding:clamp(28px,4vw,60px);
}
.about-profile-page .ap-values-grid p { color:#eee0d9; max-width:44ch; margin:0; }
.about-profile-page .ap-value-icon {
  display:grid;
  place-items:center;
  width:68px;
  height:68px;
  border-radius:50%;
  border:1px solid #e7cdb885;
  color:#efcfac;
  margin-bottom:24px;
}
.about-profile-page .ap-value-icon svg {
  width:40px;
  height:40px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.55;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.about-profile-page .ap-values-mark {
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:82px;
  height:82px;
  border-radius:50%;
  background:#f5f3ee;
  box-shadow:0 0 0 5px #421b24;
  display:grid;
  place-items:center;
}
.about-profile-page .ap-values-mark img { width:48px; height:48px; object-fit:contain; }

@media (max-width:760px) {
  .about-profile-page .ap-values h2 { margin-bottom:24px; }
  .about-profile-page .ap-values-grid { grid-template-columns:1fr; gap:14px; }
  .about-profile-page .ap-values-mark {
    position:static;
    transform:none;
    margin:0 auto 26px;
    width:62px;
    height:62px;
  }
  .about-profile-page .ap-values-mark img { width:36px; height:36px; }
}

.about-profile-page .ap-values-mark {
  width:clamp(104px,11vw,156px);
  height:clamp(104px,11vw,156px);
  z-index:1;
}
.about-profile-page .ap-values-mark img { width:64%; height:64%; }
.about-profile-page .ap-value-icon { color:#f8dbb9; }
.about-profile-page .ap-value-icon svg { stroke-width:1.85; }

@media (min-width:761px) {
  .about-profile-page .ap-values-grid { grid-auto-rows:1fr; }
  .about-profile-page .ap-values-grid li { padding-inline:clamp(48px,5.5vw,82px); }
  .about-profile-page .ap-values-grid h3 { min-height:2.24em; }
}
@media (max-width:760px) {
  .about-profile-page .ap-values-mark { width:88px; height:88px; }
}

.about-profile-page .ap-experience {
  background:var(--ap-paper);
  padding-block:clamp(54px,7vw,100px);
}
.about-profile-page .ap-simple-origin {
  max-width:850px;
  padding-inline-start:clamp(22px,4vw,56px);
  border-inline-start:1px solid var(--ap-line);
}
.about-profile-page .ap-simple-origin h2 { text-wrap:pretty; }
.about-profile-page .ap-origin-story p { color:var(--ap-muted); }
.about-profile-page .ap-origin-story .ap-origin-motivation {
  color:var(--ap-ink);
  font:600 clamp(23px,2.2vw,30px)/1.25 Cormorant,Georgia,serif;
  letter-spacing:-.01em;
  margin-top:28px;
}

.about-profile-page .ap-person-biography p:last-child { margin-bottom:0; }

/* Keep portrait framing independent of the length of each biography. */
.about-profile-page .ap-person-photo {
  aspect-ratio: 6 / 5;
  height: auto;
  min-height: 0;
}
.about-profile-page .ap-person-photo img {
  display: block;
  height: 100%;
  aspect-ratio: auto;
  object-position: center 30%;
}
.about-profile-page #team-lutz .ap-person-photo img { object-position: center 32%; }

@media (max-width: 760px) {
  .about-profile-page .ap-person-photo { aspect-ratio: 3 / 2; }
}

.about-profile-page .ap-team { padding-block:clamp(54px,6vw,88px); }
.about-profile-page .ap-team .ap-intro { max-width:68ch; }
.about-profile-page .ap-team-grid { gap:clamp(26px,4vw,54px); }
.about-profile-page .ap-person { border-top:1px solid var(--ap-line); background:transparent; }
