/*! NBC v7.035 · Homepage P1/P2 Finalization
    Scope: homepage only. Tablet composition, hero travel, mid-page rhythm,
    diagnosis hierarchy, person de-duplication, readability + editorial CTA polish.
*/

/* ---------- P1.2 · HERO TRAVEL: keep the signature scene, remove dead scroll ---------- */
@media (min-width:1025px){
  html body.page-home main#main-content > #auftakt.home-process-opening{
    height:114svh!important;
    min-height:760px!important;
  }
  html body.page-home main#main-content > #auftakt.home-process-opening[data-opening-mode="hero"]{
    height:108svh!important;
    min-height:720px!important;
  }
}

/* ---------- P2 · desktop service section: same system, tighter editorial scale ---------- */
@media (min-width:1025px){
  html body.page-home #leistungen.home-service-choice{
    padding-block:clamp(82px,6.6vw,104px)!important;
  }
  html body.page-home #leistungen .home-service-choice__head h2{
    font-size:clamp(44px,3.72vw,64px)!important;
    line-height:.985!important;
    letter-spacing:-.049em!important;
  }
  html body.page-home #leistungen .home-service-choice__rail{
    margin-top:clamp(34px,3.7vw,52px)!important;
  }
  html body.page-home #leistungen .home-service-choice__item{
    min-height:340px!important;
    padding:clamp(25px,2.4vw,36px)!important;
    grid-template-rows:46px auto minmax(2.4em,auto) minmax(5.5em,1fr) auto!important;
    row-gap:9px!important;
  }
  html body.page-home #leistungen .home-service-choice__icon{
    width:48px!important;
    height:48px!important;
  }
  html body.page-home #leistungen .home-service-choice__item h3{
    font-size:clamp(24px,1.95vw,31px)!important;
    max-width:15ch!important;
  }
  html body.page-home #leistungen .home-service-choice__item p{
    color:rgba(233,237,232,.68)!important;
    line-height:1.55!important;
  }
}

/* ---------- P1.3 · DIAGNOSIS: one clear primary path, one compact direct path ---------- */
@media (min-width:1025px){
  html body.page-home #diagnose-einstieg.home-diagnosis-navigator{
    padding-block:clamp(78px,5.6vw,92px)!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-navigator__paths{
    grid-template-columns:minmax(0,1.32fr) minmax(320px,.68fr)!important;
    margin-top:clamp(32px,3vw,46px)!important;
    border-top:1px solid rgba(238,242,238,.13)!important;
    border-bottom:1px solid rgba(238,242,238,.10)!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path{
    min-height:330px!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path--orientation{
    padding:clamp(30px,3vw,44px)!important;
    border-top:2px solid rgba(145,212,159,.72)!important;
    background:linear-gradient(135deg,rgba(145,212,159,.055),rgba(145,212,159,.012) 56%,transparent 78%)!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path--orientation h3{
    max-width:16ch!important;
    font-size:clamp(34px,3.15vw,48px)!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path--orientation > strong{
    margin-top:26px!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path--direct{
    padding:clamp(30px,2.8vw,40px)!important;
    border-left:1px solid rgba(238,242,238,.10)!important;
    background:rgba(255,255,255,.002)!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path--direct h3{
    margin-top:30px!important;
    max-width:13ch!important;
    font-size:clamp(27px,2.25vw,34px)!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path--direct p{
    max-width:34ch!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path__links{
    margin-top:24px!important;
    gap:8px 18px!important;
  }
}

/* ---------- P1.4 · PERSON: desktop gets a compact responsibility band ---------- */
@media (min-width:1025px){
  html body.page-home #persoenlich.home-attitude{
    padding-block:clamp(68px,4.8vw,82px)!important;
  }
  html body.page-home #persoenlich .home-attitude__inner{
    grid-template-columns:minmax(0,1.24fr) minmax(310px,.56fr)!important;
    gap:clamp(48px,5vw,76px)!important;
    align-items:center!important;
  }
  html body.page-home #persoenlich .home-attitude .nbc-section-title,
  html body.page-home #persoenlich .nbc-section-title{
    max-width:16ch!important;
    font-size:clamp(40px,3.75vw,56px)!important;
    line-height:.99!important;
  }
  html body.page-home #persoenlich .nbc-section-intro{
    max-width:700px!important;
    margin-top:18px!important;
    font-size:clamp(16px,1.18vw,18px)!important;
    line-height:1.58!important;
  }
  html body.page-home #persoenlich .home-attitude__signature{
    padding:18px 0 4px 24px!important;
  }
  html body.page-home #persoenlich .home-attitude__signature strong{
    margin-top:14px!important;
    font-size:clamp(21px,1.7vw,26px)!important;
  }
  html body.page-home #persoenlich .home-attitude__signature p{
    margin-top:13px!important;
    color:rgba(231,236,232,.68)!important;
  }
}

/* ---------- P2 · meaningful copy contrast, without flattening hierarchy ---------- */
@media (min-width:761px){
  html body.page-home #haltung .nbc-section-intro,
  html body.page-home #haltung .home-trust__item p,
  html body.page-home #situationen .operating-twin__finding p,
  html body.page-home #leistungen .home-service-choice__item p,
  html body.page-home #diagnose-einstieg .home-diagnosis-path p,
  html body.page-home #wissen .nbc-section-intro,
  html body.page-home #persoenlich .nbc-section-intro,
  html body.page-home #gespraech .nbc-section-intro{
    color:rgba(232,237,233,.68)!important;
  }
}

/* ---------- P2 · operating twin: reduce technical chrome, keep diagnosis readable ---------- */
@media (min-width:761px){
  html body.page-home #situationen .operating-twin__legend{
    opacity:.64!important;
  }
  html body.page-home #situationen .operating-twin__zone-labels,
  html body.page-home #situationen .operating-twin__nodes text{
    opacity:.58!important;
  }
  html body.page-home #situationen .operating-twin__grid{
    opacity:.56!important;
  }
  html body.page-home #situationen .operating-twin__scenario:not([aria-pressed="true"]){
    opacity:.76!important;
  }
  html body.page-home #situationen .operating-twin__scenario:not([aria-pressed="true"]) small{
    opacity:.76!important;
  }
  html body.page-home #situationen .operating-twin__stage-meta > small{
    opacity:.78!important;
  }
}

/* ---------- P2 · final CTA facts become an editorial information line ---------- */
@media (min-width:761px){
  html body.page-home #gespraech .home-conversation__modes{
    display:flex!important;
    align-items:center!important;
    gap:0!important;
    margin-top:25px!important;
  }
  html body.page-home #gespraech .home-conversation__modes span{
    min-height:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:rgba(236,241,237,.70)!important;
    font:600 11px/1.4 var(--mono,"IBM Plex Mono",monospace)!important;
    letter-spacing:.055em!important;
    text-transform:uppercase!important;
  }
  html body.page-home #gespraech .home-conversation__modes span + span::before{
    content:"·";
    display:inline-block;
    margin:0 12px;
    color:rgba(145,212,159,.72);
  }
}

/* ---------- P2 · make the compact knowledge bridge look intentional ---------- */
@media (min-width:1025px){
  html body.page-home #wissen.home-self-service{
    padding-block:clamp(66px,4.8vw,78px)!important;
  }
  html body.page-home #wissen .home-self-service__inner{
    gap:clamp(48px,5vw,76px)!important;
  }
}

/* ========================================================================== */
/* P1.1 · TABLET REGIE 761–1024: purpose-built composition, not desktop squeeze */
/* ========================================================================== */
@media (min-width:761px) and (max-width:1024px){
  /* Hero: preserve scene, cut the empty tail. */
  html body.page-home main#main-content > #auftakt.home-process-opening{
    height:108svh!important;
    min-height:760px!important;
  }
  html body.page-home main#main-content > #auftakt.home-process-opening[data-opening-mode="hero"]{
    height:103svh!important;
    min-height:740px!important;
  }
  html body.page-home #auftakt .home-process-opening__hero{
    top:47%!important;
    width:min(720px,calc(100% - (2 * var(--nbc-page-gutter))))!important;
  }
  html body.page-home #auftakt .home-process-opening__title{
    max-width:10.6ch!important;
    font-size:clamp(54px,7.7vw,70px)!important;
  }
  html body.page-home #auftakt .home-process-opening__lead{
    max-width:610px!important;
    font-size:17px!important;
  }

  /* Trust: compact top story + portrait, keep three principles in one ledger. */
  html body.page-home #haltung.home-trust{
    padding-block:88px 84px!important;
  }
  html body.page-home #haltung .home-trust__top{
    grid-template-columns:minmax(0,1fr)!important;
    gap:42px!important;
  }
  html body.page-home #haltung .home-trust__head{
    max-width:720px!important;
  }
  html body.page-home #haltung .nbc-section-title{
    max-width:11.5ch!important;
    font-size:clamp(48px,6.6vw,58px)!important;
  }
  html body.page-home #haltung .home-trust__person{
    display:grid!important;
    grid-template-columns:190px minmax(0,1fr)!important;
    gap:24px!important;
    align-items:end!important;
    width:min(100%,680px)!important;
    max-width:680px!important;
    margin:0!important;
  }
  html body.page-home #haltung .home-trust__portrait{
    width:190px!important;
    height:248px!important;
    aspect-ratio:auto!important;
    overflow:hidden!important;
  }
  html body.page-home #haltung .home-trust__portrait img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:50% 22%!important;
  }
  html body.page-home #haltung .home-trust__person-meta{
    padding-bottom:8px!important;
  }
  html body.page-home #haltung .home-trust__grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:0!important;
    margin-top:48px!important;
    border-block:1px solid var(--home-compose-line)!important;
  }
  html body.page-home #haltung .home-trust__item{
    min-height:0!important;
    padding:26px 20px 28px 0!important;
    border-bottom:0!important;
  }
  html body.page-home #haltung .home-trust__item + .home-trust__item{
    padding-left:20px!important;
    border-left:1px solid var(--home-compose-line)!important;
  }
  html body.page-home #haltung .home-trust__item h3{
    font-size:clamp(21px,2.8vw,26px)!important;
    line-height:1.06!important;
  }
  html body.page-home #haltung .home-trust__item p{
    font-size:14px!important;
    line-height:1.52!important;
  }

  /* Operating twin: keep the instrument, make its control chrome quieter and denser. */
  html body.page-home #situationen.home-operating-twin{
    padding-block:86px!important;
  }
  html body.page-home #situationen .operating-twin__head .nbc-section-title{
    font-size:clamp(48px,6.2vw,58px)!important;
  }
  html body.page-home #situationen .operating-twin__scenarios{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
  html body.page-home #situationen .operating-twin__scenario{
    min-height:78px!important;
    padding:13px 34px 12px 10px!important;
  }
  html body.page-home #situationen .operating-twin__scenario strong{
    font-size:12px!important;
  }
  html body.page-home #situationen .operating-twin__scenario small{
    display:none!important;
  }
  html body.page-home #situationen .operating-twin__visual{
    height:250px!important;
  }
  html body.page-home #situationen .operating-twin__finding{
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;
    gap:24px!important;
  }
  html body.page-home #situationen .operating-twin__finding > strong{
    font-size:28px!important;
  }
  html body.page-home #situationen .operating-twin__decision{
    grid-column:1/-1!important;
    padding:16px 0 0!important;
  }

  /* Services: transform giant stacked cards into a compact editorial ledger. */
  html body.page-home #leistungen.home-service-choice{
    padding-block:84px!important;
  }
  html body.page-home #leistungen .home-service-choice__head{
    margin-bottom:0!important;
  }
  html body.page-home #leistungen .home-service-choice__head h2{
    max-width:12ch!important;
    font-size:clamp(46px,6.1vw,56px)!important;
    line-height:.98!important;
  }
  html body.page-home #leistungen .home-service-choice__rail{
    grid-template-columns:1fr!important;
    margin-top:42px!important;
    border-block:1px solid rgba(255,255,255,.11)!important;
  }
  html body.page-home #leistungen .home-service-choice__item{
    grid-template-columns:58px minmax(0,1fr)!important;
    grid-template-rows:auto auto auto auto!important;
    column-gap:22px!important;
    row-gap:8px!important;
    min-height:0!important;
    padding:26px 0!important;
    border-right:0!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
  }
  html body.page-home #leistungen .home-service-choice__item:last-child{
    border-bottom:0!important;
  }
  html body.page-home #leistungen .home-service-choice__icon{
    grid-column:1!important;
    grid-row:1 / 5!important;
    justify-self:start!important;
    width:48px!important;
    height:48px!important;
    margin:0!important;
    transform:none!important;
  }
  html body.page-home #leistungen .home-service-choice__number,
  html body.page-home #leistungen .home-service-choice__item h3,
  html body.page-home #leistungen .home-service-choice__item p,
  html body.page-home #leistungen .home-service-choice__cta{
    grid-column:2!important;
  }
  html body.page-home #leistungen .home-service-choice__item h3{
    max-width:22ch!important;
    margin:0!important;
    font-size:clamp(25px,3.2vw,30px)!important;
  }
  html body.page-home #leistungen .home-service-choice__item p{
    max-width:48ch!important;
    margin:0!important;
    font-size:15px!important;
  }
  html body.page-home #leistungen .home-service-choice__cta{
    margin-top:7px!important;
    padding-top:0!important;
  }

  /* Diagnosis: dominant orientation path, compact secondary rail below. */
  html body.page-home #diagnose-einstieg.home-diagnosis-navigator{
    padding-block:84px!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-navigator__head .nbc-section-title{
    max-width:12ch!important;
    font-size:clamp(46px,6.1vw,56px)!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-navigator__head .nbc-section-intro{
    max-width:650px!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-navigator__paths{
    grid-template-columns:1fr!important;
    margin-top:38px!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path--orientation{
    padding:30px 28px 32px!important;
    border-top:2px solid rgba(145,212,159,.72)!important;
    background:linear-gradient(130deg,rgba(145,212,159,.06),rgba(145,212,159,.012) 60%,transparent)!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path--orientation h3{
    max-width:16ch!important;
    margin-top:24px!important;
    font-size:clamp(34px,4.7vw,42px)!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path--orientation p{
    max-width:56ch!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path--direct{
    display:grid!important;
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;
    grid-template-rows:auto auto!important;
    gap:8px 28px!important;
    padding:26px 28px 28px!important;
    border-left:0!important;
    border-top:1px solid rgba(238,242,238,.10)!important;
    background:transparent!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path--direct > .mono{
    grid-column:1!important;
    grid-row:1!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path--direct h3{
    grid-column:1!important;
    grid-row:2!important;
    max-width:13ch!important;
    margin:9px 0 0!important;
    font-size:28px!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path--direct p{
    grid-column:2!important;
    grid-row:1!important;
    margin:0!important;
    align-self:end!important;
  }
  html body.page-home #diagnose-einstieg .home-diagnosis-path__links{
    grid-column:2!important;
    grid-row:2!important;
    margin-top:8px!important;
    align-self:start!important;
  }

  /* Knowledge bridge: stay compact, not a pseudo-full chapter. */
  html body.page-home #wissen.home-self-service{
    padding-block:68px!important;
  }
  html body.page-home #wissen .home-self-service__inner{
    grid-template-columns:minmax(0,.82fr) minmax(360px,1fr)!important;
    gap:42px!important;
    align-items:center!important;
  }
  html body.page-home #wissen .nbc-section-title{
    font-size:clamp(42px,5.5vw,50px)!important;
  }

  /* Person: concise responsibility band instead of second hero. */
  html body.page-home #persoenlich.home-attitude{
    padding-block:70px!important;
  }
  html body.page-home #persoenlich .home-attitude__inner{
    grid-template-columns:minmax(0,1.15fr) minmax(260px,.7fr)!important;
    gap:38px!important;
    align-items:center!important;
  }
  html body.page-home #persoenlich .nbc-section-title{
    max-width:15ch!important;
    font-size:clamp(40px,5.3vw,48px)!important;
  }
  html body.page-home #persoenlich .nbc-section-intro{
    margin-top:16px!important;
    font-size:16px!important;
    line-height:1.56!important;
  }
  html body.page-home #persoenlich .home-attitude__signature{
    max-width:none!important;
    padding:16px 0 2px 22px!important;
  }
  html body.page-home #persoenlich .home-attitude__signature strong{
    margin-top:12px!important;
    font-size:22px!important;
  }
  html body.page-home #persoenlich .home-attitude__signature p{
    margin-top:11px!important;
    font-size:13px!important;
  }

  /* Final conversation: same hierarchy, less UI chrome. */
  html body.page-home #gespraech.home-conversation{
    padding-block:78px!important;
  }
  html body.page-home #gespraech .nbc-section-title{
    max-width:16ch!important;
    font-size:clamp(44px,5.8vw,54px)!important;
  }
}

/* ---------- P2 · mobile final facts: same editorial language as desktop ---------- */
@media (max-width:760px){
  html body.page-home .m7h-final__facts{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:0!important;
  }
  html body.page-home .m7h-final__facts span{
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:rgba(240,245,241,.67)!important;
    font-size:8px!important;
    line-height:1.5!important;
    letter-spacing:.055em!important;
    text-transform:uppercase!important;
  }
  html body.page-home .m7h-final__facts span + span::before{
    content:"·";
    display:inline-block;
    margin:0 8px;
    color:rgba(145,212,159,.68);
  }
  /* keep muted copy readable while retaining premium contrast */
  html body.page-home :is(.m7h-intro,.m7h-service-ledger p,.m7h-person__body>p,.m7h-knowledge-ledger p,.m7h-final__copy){
    color:rgba(238,243,239,.66)!important;
  }
}

/* ---------- QA refinement · anchor landing + tablet heading density ---------- */
@media (min-width:761px){
  html body.page-home main#main-content > section[id]{
    scroll-margin-top:78px;
  }
}
@media (min-width:761px) and (max-width:1024px){
  html body.page-home #haltung .nbc-section-title{
    max-width:16ch!important;
    font-size:clamp(46px,5.8vw,54px)!important;
  }
  html body.page-home #haltung .home-trust__top{
    gap:34px!important;
  }
  html body.page-home #haltung .home-trust__person{
    grid-template-columns:178px minmax(0,1fr)!important;
  }
  html body.page-home #haltung .home-trust__portrait{
    width:178px!important;
    height:232px!important;
  }
  html body.page-home #haltung .home-trust__grid{
    margin-top:38px!important;
  }
  html body.page-home #haltung .home-trust__item{
    padding-top:22px!important;
    padding-bottom:24px!important;
  }
}
