/* ===================================================================
   Responsive Anpassungen (Tablet & Smartphone)
   =================================================================== */
@media (max-width:900px){
  .nav-toggle{display:inline-grid;}
  .site-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#FFFFFF;border-bottom:1px solid var(--line);box-shadow:0 18px 30px rgba(37,38,40,0.08);padding:8px 24px 20px;}
  .site-nav.is-open{display:flex;}
  .nav-link{padding:14px 0;border-bottom:1px solid var(--line);font-size:16px;}
  .nav-cta{margin-top:16px;justify-content:center;padding:14px 18px;font-size:15px;}
  .site-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width:820px){
  main [style*="grid-template-columns:1"]:not(.keep-cols),
  main [style*="grid-template-columns:0"]:not(.keep-cols),
  main [style*="grid-template-columns:repeat(3"]:not(.keep-cols){grid-template-columns:minmax(0,1fr) !important;}
}
@media (max-width:640px){
  .teaser-grid{margin-top:24px !important;}
}
@media (max-width:560px){
  .site-footer__grid{grid-template-columns:minmax(0,1fr) !important;gap:28px !important;}
}
@media(max-width:900px){
  .hero__content{max-width:600px;padding:60px 0;}
}
@media(max-width:640px){
  .hero{flex-direction:column;min-height:0;}
  .hero__bg{position:relative;inset:auto;height:42vh;min-height:240px;object-position:left center;}
  .hero__inner{position:relative;padding:0;justify-content:stretch;background:var(--color-white);}
  .hero__content{max-width:none;width:100%;padding:32px 20px 40px;}
  .hero__title{font-size:clamp(30px,8vw,40px);}
  .hero__desc{max-width:100%;}
  .hero-btn{flex:1 1 100%;}
}
@media(prefers-reduced-motion:reduce){
  .hero-btn,.hero-btn svg{transition:none;}
}
@media (max-width:820px){
  .ph__media::after{background:linear-gradient(90deg,rgba(254,254,254,0.9) 0%,rgba(254,254,254,0.7) 55%,rgba(254,254,254,0.2) 100%);}
  .svc{grid-template-columns:1fr;}
  .svc:nth-child(even) .svc-img{order:0;}
  .lh__media img{object-position:28% 40%;}
  .lh__text{max-width:440px;}
}
@media (max-width:640px){
  .ph{flex-direction:column;align-items:stretch;min-height:0;}
  .ph__media{position:relative;height:clamp(220px,56vw,340px);}
  .ph__media::after{display:none;}
  .ph__inner{background:#FFFFFF;}
  .page-ueber .ph__media img{object-position:78% 40%;}
  .page-referenzen .ph__media img{object-position:70% 45%;}
  .page-kontakt .ph__media img{object-position:25% center;}
  .lh{flex-direction:column;align-items:stretch;min-height:0;}
  .lh__media{position:relative;height:clamp(240px,62vw,360px);}
  .lh__media::before{display:none;}
  .lh__inner{justify-content:flex-start;background:#FFFFFF;}
  .lh__text{max-width:none;}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{transition-duration:.01ms !important;animation-duration:.01ms !important;animation-iteration-count:1 !important;}
}
