/* The opening ends at the first viewport: header + slide + four services.
   Browser zoom remains available; no document or text is scaled by transform. */
@media (min-width:601px) and (max-width:1599px) {
  .pv-home {
    --pv-opening-header:86px;
    --pv-opening-services:154px;
    --pv-opening-timeline:44px;
  }
  .pv-home .pv-reference-header {
    box-sizing:border-box;
    height:var(--pv-opening-header);
    min-height:0;
  }
  .pv-home .pv-reference-hero {
    height:calc(100svh - var(--pv-opening-header) - var(--pv-opening-services));
    min-height:0;
    max-width:none;
    margin:0;
    padding:0;
  }
  .pv-home .pv-reference-images { height:calc(100% - var(--pv-opening-timeline)); }
  .pv-home .pv-reference-copy {
    position:absolute;
    top:4%;
    bottom:calc(4% + var(--pv-opening-timeline));
    left:5%;
    width:56%;
    min-height:0;
    padding:16px 32px;
    align-content:center;
  }
  .pv-home .pv-reference-title { font-size:clamp(36px,4.6vw,80px); line-height:1.15; }
  .pv-home .pv-reference-eyebrow { font-size:11px; margin-bottom:12px; }
  .pv-home .pv-reference-description { font-size:16px; line-height:1.5; margin:12px 0; max-width:560px; }
  .pv-home .pv-reference-cta { font-size:13px; min-height:40px; padding:9px 16px; }
  .pv-home .pv-reference-controls { margin-top:8px; }
  .pv-home .pv-reference-timeline { height:var(--pv-opening-timeline); padding-top:12px; }
  .pv-home #leistungen-start {
    box-sizing:border-box;
    height:var(--pv-opening-services);
    padding:12px 0;
  }
  .pv-home #leistungen-start .servicegrid {
    width:92%;
    max-width:1280px;
    height:100%;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
  }
  .pv-home #leistungen-start .service {
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:10px 12px;
    min-width:0;
  }
  .pv-home #leistungen-start .icon { font-size:32px; line-height:1; margin-bottom:8px; }
  .pv-home #leistungen-start .icon svg { width:32px; height:32px; }
  .pv-home #leistungen-start h3 { font-size:12px; line-height:1.4; margin-bottom:4px; }
  .pv-home #leistungen-start p { font-size:12px; line-height:1.5; }
}
@media (min-width:601px) and (max-width:1100px) {
  .pv-home { --pv-opening-header:76px; }
  .pv-home .pv-reference-copy { width:62%; padding-inline:24px; }
}
@media (min-width:601px) and (max-width:900px) and (orientation:portrait) {
  .pv-home { --pv-opening-services:264px; }
  .pv-home .pv-reference-copy { left:6%; width:76%; padding:24px; }
  .pv-home .pv-reference-title { font-size:clamp(44px,5.8vw,54px); }
  .pv-home #leistungen-start .servicegrid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (min-width:601px) and (max-height:700px) {
  .pv-home { --pv-opening-header:64px; --pv-opening-services:132px; --pv-opening-timeline:28px; }
  .pv-home .pv-reference-header { height:var(--pv-opening-header); min-height:0; padding-block:8px; }
  .pv-home .pv-reference-hero { height:calc(100svh - var(--pv-opening-header) - var(--pv-opening-services)); min-height:0; max-width:none; }
  .pv-home .pv-reference-images { height:calc(100% - var(--pv-opening-timeline)); }
  .pv-home .pv-reference-copy { top:2%; bottom:calc(2% + var(--pv-opening-timeline)); left:5%; width:60%; padding:10px 22px; }
  .pv-home .pv-reference-title { font-size:32px; line-height:1.1; }
  .pv-home .pv-reference-eyebrow { font-size:10px; margin-bottom:8px; }
  .pv-home .pv-reference-description { font-size:14px; line-height:1.4; margin:8px 0; }
  .pv-home .pv-reference-cta { min-height:36px; padding:7px 12px; font-size:12px; }
  .pv-home .pv-reference-controls { margin-top:0; }
  .pv-home .pv-reference-timeline { height:var(--pv-opening-timeline); padding-top:8px; }
  .pv-home #leistungen-start { box-sizing:border-box; height:var(--pv-opening-services); padding:8px 0; }
  .pv-home #leistungen-start .servicegrid { height:100%; grid-template-columns:repeat(4,minmax(0,1fr)); }
  .pv-home #leistungen-start .service { padding:8px; }
  .pv-home #leistungen-start .icon { font-size:28px; margin-bottom:6px; }
  .pv-home #leistungen-start .icon svg { width:28px; height:28px; }
  .pv-home #leistungen-start h3,.pv-home #leistungen-start p { font-size:11px; }
}
