/* Homepage layout contract. Shared components on other pages are untouched.
   Free content uses one outer gutter; visible cards own their inner padding. */
.page-startseite {
  --home-width:1128px;
  --home-gutter:26px;
  --home-card-pad:32px;
  --home-head-gap:32px;
  --home-section-space:clamp(56px,7vw,88px);
}
.page-startseite :is(.hero,.nvin,.wwrap,.getwrap,.fields,.gwrap,.w2wrap,.how,.social-inner,.sitefoot) {
  box-sizing:border-box;
  width:min(var(--home-width),calc(100% - 2 * var(--home-gutter)));
  max-width:none;
  margin-inline:auto;
  padding-inline:0;
  min-width:0;
}
.page-startseite :is(.wwrap,.getwrap,.fields,.gwrap,.w2wrap,.how,.social-inner) {
  padding-block:var(--home-section-space) !important;
}
.page-startseite .zone.social-section {padding-inline:0;}
/* Erfolgsgeschichten (#people) retains its original full-width composition. */
/* These are children of the one outer container, not second containers. */
.page-startseite :is(.shead,.acrail,.ksub,.ktabs,.kgrid,.knote,.testin,.tl,.steps,.hcta,.hlegal,.fwin,.fgrid,.course-preview-shell,.course-preview-controls):not(:where(#people *)) {
  width:100%;max-width:none;padding-inline:0;margin-inline:0;box-sizing:border-box;
}
.page-startseite :is(.shead,.social-heading):not(:where(#people *)) {min-width:0;}
.page-startseite :is(.shead,.khead,.social-heading) > .kick:not(:where(#people *)) {margin-bottom:0;}
.page-startseite .shead:not(:where(#people *)) {padding-block:0;}
.page-startseite :is(.shead + .acrail,.shead + .rail,.shead + .tl,.shead + .fgrid,.shead + .faq-list,.shead + .gcard,.shead + .wgrid):not(:where(#people *)) {
  margin-top:var(--home-head-gap);
}
.page-startseite :is(.shead + .acrail,.shead + .rail,.shead + .tl,.shead + .fgrid,.shead + .faq-list,.shead + .wgrid):not(:where(#people *)) {padding-top:0;}
.page-startseite .social-review-intro {margin-bottom:var(--home-head-gap);}
.page-startseite .social-instagram-section .social-heading {margin-bottom:var(--home-head-gap);}
.page-startseite .social-review-intro .social-heading {margin-bottom:0;}
.page-startseite .rail:not(:where(#people *)) {padding-inline:0;max-width:100%;}
.page-startseite :is(.w2tiles,.w2nums,.certin) {max-width:none;width:100%;}
.page-startseite .w2tiles {margin-top:var(--home-head-gap);}
.page-startseite .certin {padding:var(--home-card-pad);}
.page-startseite :is(.acard,.fact,.w2t,.w2n,.tcard,.tbox,.social-review,.social-empty,.social-post-caption,.kbody):not(:where(#people *)) {padding:var(--home-card-pad);}
.page-startseite .getcard .getfacts {padding:var(--home-card-pad) !important;}
.page-startseite .gettx {padding-inline:var(--home-card-pad);}
.page-startseite .getcard :is(.gettx,.getfacts,.gph,.fact) {min-width:0;}
.page-startseite .getcard .fact b {white-space:normal;}
.page-startseite .getcard .getfacts {grid-template-columns:minmax(0,1fr);}
.page-startseite .acard .atx {left:var(--home-card-pad) !important;right:var(--home-card-pad) !important;bottom:var(--home-card-pad) !important;}
/* Documented reading-width exceptions inside the full-width section. */
.page-startseite .gwrap > .shead,
.page-startseite [data-sektion="09-haeufige-fragen"] .shead {max-width:760px;margin-inline:auto;}
.page-startseite .gcard {width:min(100%,780px);margin-inline:auto;padding:var(--home-card-pad);}
.page-startseite .faq-list {width:min(100%,820px);max-width:none;margin-inline:auto;padding-inline:0;}
/* Identical label geometry, including the previous why-section exception. */
.page-startseite :is(.kick,.cchip):not(:where(#people *)) {
  display:inline-block;max-width:100%;height:auto;min-width:0;box-sizing:border-box;
  font:700 10.5px/1.35 var(--sans);letter-spacing:.16em;text-transform:uppercase;
  padding:8px 12px;border:1.5px solid var(--line) !important;border-radius:99px;
  white-space:normal;overflow-wrap:break-word;background:#fff !important;color:var(--ink) !important;
}
.page-startseite .z-guide .kick,
.page-startseite .gettx .kick {background:transparent !important;color:var(--lime) !important;border-color:rgba(209,253,171,.5) !important;}
/* Why: one free left edge, genuine cards inside the text column. */
.page-startseite .wleft {min-width:0;}
.page-startseite .wwrap {align-items:center;}
.page-startseite .wwrap .wgrid {align-items:stretch;margin-top:var(--home-head-gap);}
.page-startseite .wleft .wnum {padding:var(--home-card-pad);min-width:0;}
.page-startseite .wleft .wnum b {font-size:clamp(22px,1.9vw,28px);line-height:1.15;}
.page-startseite .wleft .wnum span {max-width:none;}
.page-startseite :is(.wjobs,.wcta) {margin-top:var(--home-head-gap);}
.page-startseite .jchip {white-space:normal;}
/* Partner and funding cards have a visible resting surface, not a hover reveal. */
.page-startseite .fcard {
  background:#fff;border:1px solid #dce2dd;padding:var(--home-card-pad);
  min-width:0;min-height:0;box-shadow:none;text-decoration:none;color:var(--ink);
}
.page-startseite .fcard:hover {background:#fff;box-shadow:var(--sh2);}
.page-startseite .fcard:focus-visible {outline:3px solid var(--grn-d);outline-offset:4px;}
.page-startseite .fcard .go {line-height:1.45;min-height:44px;width:100%;justify-content:space-between;}
.page-startseite [data-sektion="08-zwei-einstiege"] .fgrid {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch;
}
.page-startseite [data-sektion="08-zwei-einstiege"] .fcard {
  display:grid;grid-template-rows:subgrid;grid-row:span 4;gap:0;
}
.page-startseite [data-sektion="08-zwei-einstiege"] .fcard em {line-height:1.35;}
.page-startseite [data-sektion="08-zwei-einstiege"] .fcard h3 {margin:16px 0 0;overflow-wrap:normal;hyphens:auto;}
.page-startseite [data-sektion="08-zwei-einstiege"] .fcard p {margin:16px 0 0;}
.page-startseite [data-sektion="08-zwei-einstiege"] .fcard .go {margin-top:24px;padding-top:0;align-self:end;}
/* The outer green surface follows the grid. Its text/image retain card padding. */
.page-startseite .zone.z-cta {
  box-sizing:border-box;width:min(var(--home-width),calc(100% - 2 * var(--home-gutter)));
  max-width:none;margin-inline:auto;padding:var(--home-card-pad);
}
.page-startseite .z-cta .ctain {width:100%;max-width:none;margin:0;padding:0;min-width:0;}
.page-startseite .ctaphoto {min-width:0;}
.page-startseite .mqband {padding-inline:0 !important;}
.page-startseite .mqband :is(.mq,.mqhead) {
  width:min(var(--home-width),calc(100% - 2 * var(--home-gutter)));
  max-width:none;margin-inline:auto;padding-inline:0;
}
.page-startseite .mqband .mq {overflow:hidden;}
.page-startseite .mqband .partner-controls {right:max(var(--home-gutter),calc((100% - var(--home-width))/2));}
@media(max-width:1024px) {
  .page-startseite .wwrap {grid-template-columns:1fr;}
  .page-startseite .wwrap .wgrid {grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:767px) {
  .page-startseite {--home-gutter:20px;--home-card-pad:24px;--home-head-gap:24px;}
  .page-startseite .wwrap .wgrid {grid-template-columns:1fr;}
  .page-startseite [data-sektion="08-zwei-einstiege"] .fgrid {grid-template-columns:1fr;}
  .page-startseite [data-sektion="08-zwei-einstiege"] .fcard {display:flex;gap:0;}
  .page-startseite .fcard .go {font-size:13px;}
  .page-startseite .sitefoot {grid-template-columns:1fr;}
  .page-startseite .getcard {grid-template-columns:minmax(0,1fr) !important;}
}
@media(max-width:480px) {
  .page-startseite .getcard .fact {grid-template-columns:minmax(0,1fr);gap:8px;}
}
