/* Gemeinsame Landingpages. Tokens und Typografie aus site.css. */

body:has(main.landing-page){
  background:var(--paper,#faf9f6);
}
body:has(main.landing-page):not(.is-home) .site-header--ia{
  border-bottom:1px solid var(--line,rgba(17,17,17,.16));
  background:rgba(250,249,246,.94);
}
body:has(main.landing-page):not(.is-home) .site-header--ia .brand-wordmark,
body:has(main.landing-page):not(.is-home) .site-nav-desktop a,
body:has(main.landing-page):not(.is-home) .site-nav-lang,
body:has(main.landing-page):not(.is-home) .menu-toggle{
  color:var(--ink,#111);
}
body:has(main.landing-page):not(.is-home) .site-nav-desktop a[aria-current=page]{
  text-decoration:underline;
  text-underline-offset:6px;
}

main.landing-page{
  display:block;
  width:100%;
  max-width:none;
  margin:0;
  overflow:visible;
  background:var(--paper,#faf9f6);
  color:var(--ink,#111);
  padding-top:72px;
  min-height:100vh;
}

main.landing-page a:focus-visible{
  outline:2px solid var(--ink,#111);
  outline-offset:4px;
}

.landing-hero{
  border-bottom:1px solid var(--line,rgba(17,17,17,.16));
  padding:clamp(36px,6vw,88px) var(--pad-x) clamp(36px,5vw,72px);
}
.landing-hero-inner{
  display:grid;
  gap:clamp(28px,4vw,48px);
  align-items:start;
}
.landing-hero-copy{
  min-width:0;
  max-width:40rem;
}
.landing-kicker{
  margin:0 0 18px;
  font-size:.76rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  font-weight:700;
  color:var(--muted,#5e5b54);
  line-height:1.3;
}
.landing-hero-title{
  margin:0;
  max-width:16em;
  font-size:clamp(1.35rem,5.15vw,3.4rem);
  line-height:1.02;
  letter-spacing:-.04em;
  font-weight:700;
  text-transform:uppercase;
}
.landing-hero-title--long{
  max-width:22em;
  font-size:clamp(1.08rem,4.35vw,2.7rem);
}
.landing-hero-line{
  display:block;
}
.landing-hero-line + .landing-hero-line{
  margin-top:.55em;
}
.landing-deck{
  margin:clamp(22px,3vw,36px) 0 0;
  max-width:34ch;
  font-size:clamp(1.02rem,1.45vw,1.2rem);
  line-height:1.45;
  color:var(--ink,#111);
}

.landing-media{
  margin:0;
  min-width:0;
  background:#e8e6e0;
  min-height:0;
  aspect-ratio:3/4;
  overflow:hidden;
}
.landing-media--placeholder{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.landing-placeholder-label{
  margin:0;
  font-size:.72rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  font-weight:700;
  color:var(--muted,#5e5b54);
}
.landing-figure{
  width:100%;
  height:100%;
  min-height:inherit;
}
main.landing-page .landing-figure img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  filter:grayscale(1);
}

.landing-nav{
  padding:6px var(--pad-x);
  border-bottom:1px solid var(--line,rgba(17,17,17,.16));
}
.landing-nav ol{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:0 28px;
}
.landing-nav a{
  display:inline-flex;
  align-items:baseline;
  gap:8px;
  min-height:44px;
  padding:10px 0;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  text-decoration:none;
  color:var(--ink,#111);
}
.landing-nav a:hover{
  text-decoration:underline;
  text-underline-offset:5px;
}
.landing-nav-num{
  color:var(--muted,#5e5b54);
  letter-spacing:.08em;
  font-variant-numeric:tabular-nums;
}

.landing-section{
  display:grid;
  gap:clamp(14px,2vw,18px);
  padding:clamp(36px,5.5vw,72px) var(--pad-x);
  border-bottom:1px solid var(--line,rgba(17,17,17,.16));
  align-items:start;
}
.landing-section:last-child{
  border-bottom:0;
  padding-bottom:clamp(56px,8vw,104px);
}
.landing-section:target{
  scroll-margin-top:88px;
}
.landing-num{
  margin:0;
  font-size:clamp(1.65rem,2.6vw,2.4rem);
  font-weight:700;
  letter-spacing:-.04em;
  line-height:1;
  font-variant-numeric:tabular-nums;
}
.landing-body{
  min-width:0;
}
.landing-title{
  margin:0 0 clamp(16px,2.2vw,22px);
  max-width:22ch;
  font-size:clamp(1.28rem,2.1vw,1.75rem);
  font-weight:700;
  letter-spacing:-.03em;
  line-height:1.15;
  text-transform:uppercase;
}
.landing-prose{
  display:grid;
  gap:1em;
  max-width:46ch;
}
.landing-prose p{
  margin:0;
  font-size:1.02rem;
  line-height:1.5;
  color:var(--muted,#5e5b54);
}
.landing-prose:not(.landing-prose--plain) p:first-child,
.landing-prose p.landing-cadence,
.landing-prose p.landing-lead,
.landing-cadence,
.landing-lead{
  color:var(--ink,#111);
  font-weight:700;
}
.landing-terms{
  list-style:none;
  margin:0 0 clamp(22px,3vw,32px);
  padding:0;
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  max-width:62rem;
  font-size:clamp(.92rem,1.35vw,1.08rem);
  font-weight:700;
  letter-spacing:.05em;
  text-transform:uppercase;
  line-height:1.45;
}
.landing-terms li{
  white-space:nowrap;
}
.landing-terms li:not(:last-child)::after{
  content:"·";
  margin:0 .7em;
  color:var(--muted,#5e5b54);
  font-weight:400;
}
.landing-terms--stack{
  flex-direction:column;
  align-items:flex-start;
  gap:.4em;
  max-width:28rem;
}
.landing-terms--stack li{
  white-space:normal;
}
.landing-terms--stack li:not(:last-child)::after{
  content:"";
  margin:0;
}
.landing-lines{
  list-style:none;
  margin:0 0 clamp(22px,3vw,32px);
  padding:0;
  display:grid;
  gap:.4em;
  max-width:28rem;
}
.landing-lines li{
  font-size:clamp(1.02rem,1.5vw,1.2rem);
  font-weight:700;
  letter-spacing:-.02em;
  text-transform:uppercase;
  line-height:1.25;
  color:var(--ink,#111);
}
.landing-statement{
  margin:0;
  padding:0;
  border:0;
}
.landing-statement p{
  margin:0;
  max-width:16em;
  font-size:clamp(1.35rem,2.3vw,1.85rem);
  line-height:1.12;
  letter-spacing:-.03em;
  font-weight:700;
  text-transform:uppercase;
  color:var(--ink,#111);
}
.landing-statement--lead{
  margin:0 0 clamp(18px,2.4vw,28px);
}
.landing-statement--lead p{
  max-width:18em;
}
.landing-statements{
  display:grid;
  gap:.45em;
  margin:0;
  min-width:0;
}
.landing-statements .landing-statement p{
  max-width:14em;
}
.landing-after{
  min-width:0;
}
.landing-actions{
  margin:clamp(28px,4vw,40px) 0 0;
}
.landing-actions-row{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:10px 12px;
}
.landing-actions-follow{
  display:grid;
  justify-items:start;
  min-width:0;
  max-width:100%;
}
.landing-cta{
  min-height:44px;
  align-items:center;
  justify-content:center;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-size:.78rem;
  white-space:nowrap;
}
.landing-cta--quiet{
  background:transparent;
  color:var(--ink,#111);
}
.landing-cta:focus-visible{
  outline:2px solid var(--ink,#111);
  outline-offset:4px;
}
.landing-actions-note{
  width:0;
  min-width:100%;
  margin:.75em 0 0;
  color:var(--muted,#5e5b54);
  font-size:.92rem;
  font-weight:400;
  letter-spacing:0;
  line-height:1.45;
  text-transform:none;
}
.landing-actions:has(.landing-actions-note) + .landing-signoff{
  margin-top:clamp(52px,7vw,84px);
}

.landing-closing{
  padding:clamp(48px,7vw,104px) var(--pad-x) clamp(56px,8vw,112px);
}
.landing-closing .landing-kicker{
  margin-bottom:clamp(18px,2.5vw,28px);
  color:var(--ink,#111);
}
.landing-closing-meta{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:2px;
  max-width:24rem;
}
.landing-closing-meta li{
  margin:0;
  font-size:clamp(1.05rem,1.6vw,1.25rem);
  font-weight:700;
  letter-spacing:-.02em;
  line-height:1.35;
}
.landing-closing-meta a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  text-decoration:underline;
  text-underline-offset:5px;
}
.landing-closing-lines{
  margin-top:clamp(28px,4vw,48px);
  display:grid;
  gap:.35em;
}
.landing-closing-line{
  margin:0;
  max-width:18em;
  font-size:clamp(1.45rem,2.8vw,2.4rem);
  font-weight:700;
  letter-spacing:-.03em;
  line-height:1.08;
  text-transform:uppercase;
}

@media(min-width:720px){
  .landing-section{
    grid-template-columns:minmax(4.5rem,6.5rem) minmax(0,1fr);
    column-gap:clamp(24px,3vw,40px);
    row-gap:clamp(18px,2.5vw,28px);
  }
  .landing-num{
    grid-column:1;
    grid-row:1;
  }
  .landing-body{
    grid-column:2;
    grid-row:1;
  }
  .landing-section > .landing-statement,
  .landing-section > .landing-statements{
    grid-column:2;
    grid-row:2;
    margin:0;
    padding-top:clamp(8px,1.5vw,12px);
    border-top:1px solid var(--line,rgba(17,17,17,.16));
    max-width:36rem;
  }
  .landing-section > .landing-after{
    grid-column:2;
    grid-row:3;
  }
}

@media(min-width:1080px){
  .landing-hero-inner{
    grid-template-columns:minmax(0,1.15fr) minmax(16rem,26rem);
    gap:clamp(36px,4vw,72px);
    align-items:end;
  }
  .landing-hero-title{
    font-size:clamp(1.85rem,2.35vw,2.45rem);
  }
  .landing-hero-title--long{
    font-size:clamp(1.45rem,1.95vw,2rem);
  }
  .landing-media{
    aspect-ratio:3/4;
    max-height:none;
    justify-self:end;
    width:100%;
  }
  .landing-section{
    grid-template-columns:minmax(4.5rem,6.5rem) minmax(0,1.15fr) minmax(16rem,22rem);
    column-gap:clamp(28px,4vw,56px);
  }
  .landing-num{
    grid-row:1 / span 2;
  }
  .landing-section > .landing-statement,
  .landing-section > .landing-statements{
    grid-column:3;
    grid-row:1 / span 2;
    align-self:start;
    max-width:none;
    padding-top:0;
    border-top:0;
  }
  .landing-section:has(> .landing-after) > .landing-statement,
  .landing-section:has(> .landing-after) > .landing-statements{
    grid-row:1;
  }
  .landing-section > .landing-statement p,
  .landing-statements .landing-statement p{
    max-width:11em;
  }
  .landing-section > .landing-after{
    grid-column:2 / -1;
    grid-row:2;
  }
  .landing-section:not(:has(> .landing-statement)):not(:has(> .landing-statements)) .landing-body{
    grid-column:2 / -1;
  }
}

.landing-strip{
  list-style:none;
  margin:0 0 clamp(22px,3vw,32px);
  padding:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(14px,1.6vw,18px);
  min-width:0;
}
.landing-strip-item{
  margin:0;
  min-width:0;
}
.landing-strip-frame{
  position:relative;
  aspect-ratio:1;
  background:#e8e6e0;
  overflow:hidden;
}
.landing-strip-frame--empty{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:8px;
  text-align:center;
}
.landing-strip-frame--empty .landing-placeholder-label{
  font-size:.62rem;
  letter-spacing:.08em;
  line-height:1.3;
}
main.landing-page .landing-strip img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  filter:grayscale(1);
}
.landing-strip figcaption{
  margin:8px 0 0;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.05em;
  line-height:1.35;
  text-transform:uppercase;
  text-align:left;
  overflow-wrap:anywhere;
}

@media(min-width:720px){
  .landing-strip{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}

@media(min-width:1080px){
  .landing-strip{
    grid-template-columns:repeat(7,minmax(0,1fr));
    margin:0;
  }
  .landing-section--strip > .landing-body{
    display:contents;
  }
  .landing-section--strip > .landing-num{
    grid-row:1 / -1;
  }
  .landing-section--strip .landing-title{
    grid-column:2;
    grid-row:1;
    margin-bottom:0;
  }
  .landing-section--strip .landing-strip{
    grid-column:2 / -1;
    grid-row:2;
  }
  .landing-section--strip .landing-strip-copy{
    grid-column:2;
    grid-row:3;
    min-width:0;
  }
  .landing-section--strip:not(:has(> .landing-statement)):not(:has(> .landing-statements)) .landing-strip-copy{
    grid-column:2 / -1;
  }
  .landing-section--strip > .landing-statement,
  .landing-section--strip > .landing-statements{
    grid-column:3;
    grid-row:3;
    align-self:start;
    padding-top:0;
    border-top:0;
    max-width:none;
  }
}

@media(max-width:719px){
  .landing-terms:not(.landing-terms--stack) li{
    white-space:normal;
  }
}

/* ANCHOA. Dieselben Tokens. Hero wie die Fortsetzung der Karte: Zeile, Frage, Bild. */
.landing-hero--inquiry{
  padding:clamp(18px,3vw,36px) var(--pad-x) clamp(28px,4vw,48px);
}
.landing-hero-mark{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:.55em;
  margin:0;
  font-size:clamp(.78rem,1.2vw,.88rem);
  font-weight:700;
  letter-spacing:.14em;
  line-height:1.3;
  text-transform:uppercase;
}
.landing-hero-slash{
  color:var(--muted,#5e5b54);
  font-weight:400;
}
.landing-hero-credit{
  margin:10px 0 0;
  max-width:36em;
  font-size:clamp(.68rem,1.15vw,.82rem);
  font-weight:700;
  letter-spacing:.14em;
  line-height:1.35;
  text-transform:uppercase;
}
.landing-hero-prompt{
  margin:0;
  max-width:14em;
  font-size:clamp(1.08rem,2.15vw,1.5rem);
  font-weight:700;
  letter-spacing:-.02em;
  line-height:1.12;
  text-transform:uppercase;
}
.landing-hero-mark + .landing-hero-prompt,
.landing-hero-credit + .landing-hero-prompt{
  margin-top:clamp(20px,3vw,32px);
}
.landing-hero-bridge{
  margin:.55em 0 0;
  max-width:28em;
  color:var(--muted,#5e5b54);
  font-size:clamp(.95rem,1.25vw,1.05rem);
  font-weight:400;
  letter-spacing:0;
  line-height:1.4;
}
.landing-hero--inquiry .landing-hero-title{
  max-width:14em;
  margin:clamp(22px,3.4vw,40px) 0 0;
  font-size:clamp(1.2rem,6vw,4.8rem);
  line-height:.9;
  letter-spacing:-.05em;
}
.landing-hero--inquiry .landing-hero-line + .landing-hero-line{
  margin-top:0;
}
.landing-hero-photo{
  margin:clamp(18px,2.6vw,28px) 0 0;
}
main.landing-page .landing-hero-photo img{
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  max-height:min(52vh,640px);
  object-fit:contain;
  object-position:center center;
  filter:none;
}
.landing-hero-caption{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  column-gap:clamp(16px,2.4vw,28px);
  row-gap:2px;
  margin:clamp(8px,1.1vw,12px) 0 0;
  padding:0;
  max-width:100%;
  font-style:normal;
}
.landing-hero-caption-mark{
  color:var(--ink,#111);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1.35;
  text-transform:uppercase;
}
.landing-hero-caption-text{
  color:var(--muted,#5e5b54);
  font-size:.84rem;
  font-weight:400;
  letter-spacing:0;
  line-height:1.4;
}
.landing-hero--inquiry .landing-deck{
  margin:12px 0 0;
  max-width:34ch;
  font-size:.98rem;
  font-weight:400;
  letter-spacing:0;
  line-height:1.45;
  text-transform:none;
}
.landing-hero--inquiry .landing-terms{
  margin:clamp(22px,3vw,32px) 0 0;
}
.landing-hero-foot{
  display:grid;
  gap:14px 28px;
  margin-top:clamp(8px,1.6vw,14px);
  align-items:start;
}
.landing-hero-more{
  margin:0;
}
.landing-more{
  display:inline-flex;
  align-items:center;
  gap:12px;
  min-height:44px;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-decoration:none;
}
.landing-more:hover{
  text-decoration:underline;
  text-underline-offset:5px;
}
.landing-more-arrow{
  font-weight:400;
}
.landing-hero-note{
  margin:0;
  max-width:46ch;
  font-size:.98rem;
  line-height:1.45;
  color:var(--muted,#5e5b54);
}
.landing-hero-note span{
  color:var(--ink,#111);
  font-weight:700;
}
.landing-title--display{
  max-width:16em;
  font-size:clamp(1.7rem,4.2vw,2.75rem);
  line-height:1.02;
  letter-spacing:-.035em;
}
.landing-intro{
  margin-bottom:clamp(22px,3vw,36px);
}
.landing-opening{
  max-width:54rem;
  margin-top:clamp(8px,2vw,18px);
  padding-top:clamp(26px,3.6vw,40px);
  border-top:1px solid var(--line,rgba(17,17,17,.16));
}
.landing-opening .landing-title{
  max-width:12em;
  margin-bottom:clamp(12px,1.8vw,18px);
  font-size:clamp(1.12rem,1.7vw,1.4rem);
}
.landing-opening .landing-prose{
  gap:.8em;
  max-width:42rem;
}
.landing-opening .landing-prose p{
  color:var(--ink,#111);
  font-weight:400;
}
.landing-fields{
  list-style:none;
  margin:clamp(18px,2.6vw,28px) 0 0;
  padding:0;
  display:grid;
  border-bottom:1px solid var(--line,rgba(17,17,17,.16));
}
.landing-fields li{
  margin:0;
  padding:clamp(12px,1.5vw,16px) 0 clamp(13px,1.6vw,18px);
  border-top:1px solid var(--line,rgba(17,17,17,.16));
  display:grid;
  gap:.28em;
  align-content:start;
}
.landing-fields-label{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:.45em .7em;
  margin:0;
  color:var(--ink,#111);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.1em;
  line-height:1.35;
  text-transform:uppercase;
}
.landing-fields-label span{
  letter-spacing:.1em;
}
.landing-fields-num{
  color:var(--muted,#5e5b54);
  font-variant-numeric:tabular-nums;
  letter-spacing:.08em;
}
.landing-fields-text{
  margin:0;
  max-width:28em;
  color:var(--ink,#111);
  font-size:.98rem;
  font-weight:400;
  letter-spacing:0;
  line-height:1.4;
}
.landing-opening-close{
  margin:clamp(36px,4.4vw,56px) 0 0;
  max-width:16em;
  color:var(--ink,#111);
  font-size:clamp(1.08rem,1.7vw,1.32rem);
  font-weight:700;
  letter-spacing:-.03em;
  line-height:1.15;
  text-transform:uppercase;
}
.landing-opening-note{
  margin:.7em 0 0;
  max-width:36em;
  color:var(--muted,#5e5b54);
  font-size:.92rem;
  font-weight:400;
  line-height:1.45;
}
@media(min-width:900px){
  .landing-fields{
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:clamp(32px,5vw,72px);
  }
  .landing-fields li:last-child{
    grid-column:1 / -1;
  }
}
.landing-study{
  max-width:54rem;
  margin-top:clamp(48px,6.5vw,84px);
  padding-top:clamp(28px,4vw,40px);
  border-top:1px solid var(--line,rgba(17,17,17,.16));
}
.landing-study-mark{
  margin:0;
  color:var(--muted,#5e5b54);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1.4;
  text-transform:uppercase;
}
.landing-study-title{
  margin:.4em 0 0;
  max-width:12em;
  color:var(--ink,#111);
  font-size:clamp(1.28rem,2.1vw,1.75rem);
  font-weight:700;
  letter-spacing:-.03em;
  line-height:1.12;
  text-transform:uppercase;
}
.landing-study-line{
  margin:.7em 0 0;
  max-width:36em;
  color:var(--muted,#5e5b54);
  font-size:.98rem;
  font-weight:400;
  line-height:1.45;
}
.landing-study-player{
  margin-top:clamp(22px,3vw,32px);
  max-width:36rem;
}
.landing-study-player audio{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  clip-path:inset(50%);
}
.landing-study-controls{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px 16px;
}
.landing-study-play{
  appearance:none;
  border:1px solid var(--ink,#111);
  background:var(--ink,#111);
  color:#fff;
  min-height:44px;
  padding:0 16px;
  font:inherit;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.1em;
  line-height:1;
  text-transform:uppercase;
  cursor:pointer;
}
.landing-study-play:hover{
  opacity:.88;
}
.landing-study-play:focus-visible,
.landing-study-range:focus-visible,
.landing-study-read summary:focus-visible{
  outline:2px solid var(--ink,#111);
  outline-offset:4px;
}
.landing-study-progress{
  flex:1 1 8rem;
  min-width:0;
}
.landing-study-range{
  -webkit-appearance:none;
  appearance:none;
  display:block;
  width:100%;
  height:44px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
}
.landing-study-range:disabled{
  cursor:default;
}
.landing-study-range::-webkit-slider-runnable-track{
  height:2px;
  background:rgba(17,17,17,.18);
}
.landing-study-range::-webkit-slider-thumb{
  -webkit-appearance:none;
  width:12px;
  height:12px;
  margin-top:-5px;
  border:0;
  border-radius:50%;
  background:#111;
}
.landing-study-range::-moz-range-track{
  height:2px;
  background:rgba(17,17,17,.18);
  border:0;
}
.landing-study-range::-moz-range-thumb{
  width:12px;
  height:12px;
  border:0;
  border-radius:50%;
  background:#111;
}
.landing-study-time{
  display:flex;
  gap:4px;
  margin:0;
  color:var(--muted,#5e5b54);
  font-size:.72rem;
  font-variant-numeric:tabular-nums;
  letter-spacing:.04em;
  line-height:1.3;
  white-space:nowrap;
}
.landing-study-pending{
  margin:clamp(18px,2.4vw,26px) 0 0;
  max-width:36em;
  color:var(--muted,#5e5b54);
  font-size:.92rem;
  line-height:1.45;
}
.landing-study-read{
  margin-top:clamp(16px,2.2vw,24px);
}
.landing-study-read summary{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  color:var(--ink,#111);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.08em;
  line-height:1.3;
  text-transform:uppercase;
  cursor:pointer;
}
.landing-study-read summary::-webkit-details-marker{
  display:none;
}
.landing-study-transcript{
  margin:.2em 0 0;
  max-width:36em;
  color:var(--ink,#111);
  font-size:.98rem;
  font-weight:400;
  line-height:1.45;
  white-space:pre-wrap;
}
@media(max-width:719px){
  .landing-study-controls{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
  }
  .landing-study-play,
  .landing-study-progress{
    grid-column:1 / -1;
  }
  .landing-study-play{
    justify-self:start;
  }
}
.landing-entries{
  margin:0;
  padding:0;
  display:grid;
  gap:clamp(22px,3vw,36px);
  max-width:36rem;
}
.landing-entries > div{
  display:grid;
  gap:.45em;
  align-content:start;
}
.landing-entries dt{
  margin:0;
  font-size:clamp(1.05rem,1.6vw,1.28rem);
  font-weight:700;
  letter-spacing:.06em;
  line-height:1.2;
  text-transform:uppercase;
}
.landing-entries dd{
  margin:0;
  max-width:36ch;
  font-size:1.02rem;
  line-height:1.45;
  color:var(--muted,#5e5b54);
}
.landing-entries dd p{
  margin:0;
}
.landing-entries dd p + p{
  margin-top:.75em;
}
.landing-entry-meta{
  display:grid;
  gap:.12em;
  color:var(--ink,#111);
  font-size:.95rem;
  font-weight:700;
  line-height:1.35;
}
.landing-entry-meta span{
  display:block;
}
.landing-signoff{
  margin:clamp(28px,4vw,40px) 0 0;
  display:grid;
  gap:.15em;
}
.landing-signoff p{
  margin:0;
  font-size:1.02rem;
  font-weight:700;
  line-height:1.35;
  color:var(--ink,#111);
}
.landing-frame{
  margin:clamp(22px,3vw,36px) 0 0;
  background:#e8e6e0;
  overflow:hidden;
  min-width:0;
}
.landing-frame--wide{
  width:100%;
  max-width:40rem;
  aspect-ratio:3/2;
}
.landing-frame--panorama{
  width:100%;
  max-width:40rem;
  aspect-ratio:5/2;
}
.landing-frame--tile{
  aspect-ratio:4/3;
  margin:0;
}
.landing-frame--card{
  aspect-ratio:4/3;
  width:min(20rem,100%);
  max-width:100%;
}
.landing-frame--portrait{
  aspect-ratio:3/4;
  width:100%;
  margin:0;
}
.landing-subtitle{
  margin:0 0 clamp(14px,2vw,20px);
  font-size:clamp(1.15rem,1.8vw,1.45rem);
  font-weight:700;
  letter-spacing:-.03em;
  line-height:1.15;
  color:var(--ink,#111);
}
.landing-section--portrait > .landing-body{
  display:grid;
  align-items:start;
}
.landing-section--portrait .landing-frame--portrait{
  order:-1;
  margin:0 0 clamp(22px,3vw,32px);
}
@media(min-width:800px){
  .landing-section--portrait > .landing-body{
    grid-template-columns:minmax(14rem,22rem) minmax(0,1fr);
    column-gap:clamp(28px,4vw,64px);
  }
  .landing-section--portrait .landing-frame--portrait{
    order:0;
    grid-column:1;
    grid-row:1 / span 12;
    margin:0;
  }
  .landing-section--portrait > .landing-body > :not(.landing-frame){
    grid-column:2;
  }
}
body:has(main.landing-page) .site-header--publication{
  height:auto;
  min-height:72px;
  padding-top:14px;
  padding-bottom:14px;
}
body:has(main.landing-page) .site-header--publication .brand-wordmark-img{
  display:block;
  width:auto;
  height:22px;
  max-width:min(46vw,11.5rem);
  object-fit:contain;
  object-position:left center;
}
body:has(main.landing-page) .landing-publication-mark{
  margin:0;
  max-width:14rem;
  color:var(--ink,#111);
  font-size:clamp(.62rem,2.5vw,.78rem);
  font-weight:700;
  letter-spacing:.08em;
  line-height:1.35;
  text-align:right;
  text-transform:uppercase;
}
.landing-publication-footer{
  padding:clamp(36px,5.5vw,72px) var(--pad-x,clamp(28px,4vw,64px)) clamp(48px,7vw,88px);
  border-top:1px solid var(--line,rgba(17,17,17,.16));
  background:var(--paper,#faf9f6);
  color:var(--ink,#111);
}
.landing-publication-footer p{
  margin:0;
}
.landing-publication-footer-title{
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.08em;
  line-height:1.4;
  text-transform:uppercase;
}
.landing-publication-footer-credit{
  margin-top:.45em;
  color:var(--muted,#5e5b54);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1.4;
  text-transform:uppercase;
}
.landing-publication-footer-nav{
  display:flex;
  flex-wrap:wrap;
  gap:0 22px;
  margin-top:clamp(18px,2.5vw,28px);
}
.landing-publication-footer-nav a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  color:var(--ink,#111);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.06em;
  text-decoration:underline;
  text-transform:uppercase;
  text-underline-offset:4px;
}
.landing-frame--empty{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
  text-align:center;
}
main.landing-page .landing-frame img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  filter:none;
}
main.landing-page .landing-frame--has-caption{
  aspect-ratio:auto;
  overflow:visible;
  height:auto;
  background:transparent;
}
main.landing-page .landing-frame--has-caption img{
  height:auto;
  background:#e8e6e0;
}
main.landing-page .landing-frame--has-caption.landing-frame--wide img{
  aspect-ratio:3/2;
}
main.landing-page .landing-frame--has-caption.landing-frame--card img{
  aspect-ratio:4/3;
  object-position:center center;
}
#transfer.landing-section > .landing-statement{
  margin-top:clamp(8px,1.5vw,16px);
}
@media(min-width:1080px){
  #transfer.landing-section > .landing-body{
    grid-column:2 / -1;
  }
  #transfer.landing-section > .landing-statement{
    grid-column:2 / -1;
    grid-row:2;
    align-self:start;
    max-width:28rem;
    padding-top:clamp(8px,1.5vw,12px);
    border-top:1px solid var(--line,rgba(17,17,17,.16));
  }
  #transfer.landing-section > .landing-statement p{
    max-width:16em;
  }
}
@media(min-width:800px){
  .landing-body:has(> .landing-frame--card){
    display:grid;
    grid-template-columns:minmax(0,1fr) 20rem;
    column-gap:clamp(28px,4vw,56px);
    align-items:start;
  }
  .landing-body:has(> .landing-frame--card) > :not(.landing-frame--card){
    grid-column:1;
  }
  .landing-body > .landing-frame--card{
    grid-column:2;
    grid-row:1 / span 6;
    align-self:start;
    justify-self:end;
    width:20rem;
    margin:0;
  }
}
.landing-signoff p.landing-signoff-credit{
  margin-top:.65em;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1.4;
  text-transform:uppercase;
  color:var(--muted,#5e5b54);
}
.landing-context{
  margin:clamp(22px,3vw,32px) 0 0;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:4px 14px;
  max-width:40rem;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.06em;
  line-height:1.35;
  text-transform:uppercase;
  color:var(--muted,#5e5b54);
}
.landing-context a{
  color:var(--ink,#111);
  min-height:44px;
  display:inline-flex;
  align-items:center;
  text-decoration:underline;
  text-underline-offset:4px;
}

@media(max-width:719px){
  .landing-hero-photo{
    margin-left:calc(var(--pad-x) * -1);
    margin-right:calc(var(--pad-x) * -1);
  }
  main.landing-page .landing-hero-photo img{
    width:100%;
    max-height:none;
  }
  .landing-hero-photo .landing-hero-caption{
    padding-left:var(--pad-x);
    padding-right:var(--pad-x);
  }
}

@media(min-width:900px){
  .landing-hero--inquiry .landing-hero-title{
    font-size:clamp(3.2rem,5.6vw,4.8rem);
  }
  .landing-entries{
    grid-template-columns:repeat(3,minmax(0,1fr));
    max-width:none;
    gap:clamp(24px,3vw,48px);
  }
}

.landing-context .landing-context-open{
  appearance:none;
  margin:0;
  padding:0;
  border:0;
  background:none;
  color:var(--ink,#111);
  font:inherit;
  font-weight:700;
  letter-spacing:inherit;
  text-transform:inherit;
  text-decoration:underline;
  text-underline-offset:4px;
  min-height:44px;
  display:inline-flex;
  align-items:center;
  cursor:pointer;
}
.landing-context .landing-context-open:focus-visible,
.landing-dialog-close:focus-visible,
.landing-dialog a:focus-visible{
  outline:2px solid var(--ink,#111);
  outline-offset:4px;
}
dialog.landing-dialog{
  box-sizing:border-box;
  border:0;
  padding:0;
  background:transparent;
  color:var(--ink,#111);
}
dialog.landing-dialog[open]{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  margin:0;
  padding:clamp(16px,3vw,40px);
  background:transparent;
}
.landing-dialog::backdrop{
  background:rgba(17,17,17,.42);
}
.landing-dialog-sheet{
  box-sizing:border-box;
  width:min(40rem,100%);
  max-height:calc(100dvh - 2 * clamp(16px,3vw,40px));
  overflow:auto;
  overscroll-behavior:contain;
  background:var(--paper,#faf9f6);
  padding:0 clamp(28px,4vw,56px) clamp(36px,5vw,64px);
}
.landing-dialog-bar{
  position:sticky;
  top:0;
  z-index:1;
  display:flex;
  justify-content:flex-end;
  margin:0 calc(clamp(28px,4vw,56px) * -1);
  padding:8px clamp(12px,2vw,20px) 0;
  background:var(--paper,#faf9f6);
}
.landing-dialog-close{
  appearance:none;
  width:44px;
  height:44px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:var(--ink,#111);
  font:inherit;
  font-size:1.6rem;
  line-height:1;
  cursor:pointer;
}
.landing-dialog-head{
  display:grid;
  gap:clamp(18px,2.6vw,28px);
  align-items:start;
  margin-top:clamp(4px,1vw,12px);
}
.landing-dialog-portrait{
  margin:0;
  width:100%;
  background:transparent;
}
.landing-dialog-portrait img{
  width:100%;
  height:auto;
  object-fit:contain;
  object-position:center;
  display:block;
}
.landing-dialog-name{
  margin:0;
  font-size:clamp(1.7rem,4vw,2.6rem);
  font-weight:700;
  letter-spacing:-.035em;
  line-height:1.02;
  text-transform:uppercase;
}
.landing-dialog-role{
  margin:.45em 0 0;
  color:var(--muted,#5e5b54);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1.4;
  text-transform:uppercase;
}
.landing-dialog-lede{
  margin:clamp(14px,2vw,18px) 0 0;
  max-width:36em;
  color:var(--ink,#111);
  font-size:1.02rem;
  font-weight:700;
  line-height:1.45;
}
.landing-dialog-block{
  display:grid;
  gap:1em;
  margin-top:clamp(28px,4vw,44px);
}
.landing-dialog-block h3{
  margin:0;
  max-width:22em;
  font-size:clamp(1.05rem,1.6vw,1.28rem);
  font-weight:700;
  letter-spacing:-.02em;
  line-height:1.2;
  text-transform:uppercase;
}
.landing-dialog-block .landing-prose{
  max-width:42rem;
}
.landing-dialog .landing-statement{
  margin:clamp(8px,1.4vw,14px) 0;
}
.landing-dialog a{
  color:var(--ink,#111);
  text-decoration:none;
}
.landing-dialog-more{
  margin:clamp(32px,4.5vw,48px) 0 0;
}
.landing-dialog-kicker{
  margin:0 0 .75em;
  color:var(--muted,#5e5b54);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1.4;
  text-transform:uppercase;
}
dialog.landing-dialog.landing-dialog--explain[open]{
  padding:clamp(12px,2vw,24px);
}
.landing-dialog--explain .landing-dialog-sheet{
  width:min(36rem,100%);
  height:auto;
  max-height:calc(100dvh - 2 * clamp(12px,2vw,24px));
  padding:0 clamp(22px,3vw,36px) clamp(22px,3vw,32px);
}
.landing-dialog--explain .landing-dialog-bar{
  margin-right:calc(clamp(22px,3vw,36px) * -1);
  margin-left:calc(clamp(22px,3vw,36px) * -1);
  padding-top:2px;
}
.landing-dialog--explain .landing-dialog-head{
  gap:0;
  margin-top:0;
}
.landing-dialog--explain .landing-dialog-kicker{
  margin-bottom:.4em;
}
.landing-dialog--explain .landing-dialog-name{
  max-width:14em;
  font-size:clamp(1.4rem,2.4vw,1.85rem);
}
.landing-dialog--explain .landing-dialog-lede{
  margin-top:.4em;
  max-width:62ch;
  font-size:1rem;
  line-height:1.4;
}
.landing-dialog--explain .landing-dialog-block{
  gap:.4em;
  margin-top:clamp(16px,2vw,22px);
  padding-top:clamp(12px,1.4vw,14px);
  border-top:1px solid var(--line,rgba(17,17,17,.16));
}
.landing-dialog--explain .landing-dialog-block h3{
  max-width:none;
  font-size:.92rem;
  letter-spacing:.01em;
  line-height:1.25;
}
.landing-dialog--explain .landing-prose{
  gap:.35em;
  max-width:62ch;
}
.landing-dialog--explain .landing-prose p{
  font-size:1rem;
  line-height:1.45;
}
.landing-dialog--explain .landing-prose p.landing-cadence{
  margin-top:.45em;
  max-width:62ch;
  font-size:1rem;
  line-height:1.4;
}
.landing-dialog-questions{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:.8em;
}
.landing-dialog-questions li{
  margin:0;
  max-width:24em;
  color:var(--ink,#111);
  font-size:clamp(1.05rem,1.5vw,1.18rem);
  font-weight:700;
  letter-spacing:-.02em;
  line-height:1.28;
}
.landing-explain{
  border-bottom:1px solid var(--line,rgba(17,17,17,.16));
  background:transparent;
  color:var(--ink,#111);
}
.landing-explain-trigger{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  grid-template-areas:
    "bolt label"
    ". hint";
  align-items:center;
  column-gap:12px;
  row-gap:2px;
  width:100%;
  min-height:44px;
  margin:0;
  padding:8px var(--pad-x);
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  text-align:left;
  cursor:pointer;
  appearance:none;
}
.landing-explain-bolt{
  grid-area:bolt;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:14px;
  height:14px;
}
.landing-explain-bolt svg{display:block}
.landing-explain-label{
  grid-area:label;
  min-width:0;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.1em;
  line-height:1.2;
  text-transform:uppercase;
}
.landing-explain-hint{
  grid-area:hint;
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1.2;
  text-transform:uppercase;
  color:var(--muted,#5e5b54);
}
.landing-explain-trigger:hover{
  background:var(--bg,#f3f1ec);
}
.landing-explain-trigger:hover .landing-explain-label{
  text-decoration:underline;
  text-underline-offset:4px;
}
.landing-explain-trigger:focus-visible{
  outline:2px solid var(--ink,#111);
  outline-offset:-2px;
  background:var(--bg,#f3f1ec);
}
@media(min-width:720px){
  .landing-explain-trigger{
    grid-template-columns:auto auto 1fr;
    grid-template-areas:"bolt label hint";
    column-gap:clamp(16px,3vw,36px);
    padding-top:7px;
    padding-bottom:7px;
  }
  .landing-explain-hint{justify-self:start}
}
@media(max-width:419px){
  .landing-explain-label{letter-spacing:.06em}
}
@media(max-width:719px){
  dialog.landing-dialog[open]{
    padding:8px;
  }
  dialog.landing-dialog.landing-dialog--explain[open]{
    padding:8px;
  }
  .landing-dialog--explain .landing-dialog-sheet{
    max-height:calc(100dvh - 16px);
    padding-left:20px;
    padding-right:20px;
  }
  .landing-dialog--explain .landing-dialog-bar{
    margin-left:-20px;
    margin-right:-20px;
  }
  .landing-dialog--explain .landing-dialog-name{
    font-size:1.35rem;
  }
  .landing-dialog-sheet{
    width:100%;
    height:calc(100dvh - 16px);
    max-height:calc(100dvh - 16px);
  }
}
@media(prefers-reduced-motion:no-preference){
  .landing-dialog::backdrop{
    animation:landing-dialog-fade .16s ease;
  }
  .landing-dialog-sheet{
    animation:landing-dialog-rise .18s ease;
  }
}
@keyframes landing-dialog-fade{
  from{opacity:0}
  to{opacity:1}
}
@keyframes landing-dialog-rise{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:none}
}
