
/* ==========================================================================
   ComTechSa 0.27.2 – Startseite unten: Projekte/KleinBüro + Footer
   Keine neue Richtung; nur Angleichung an die bestehende Referenz.
   ========================================================================== */

/* ---------- Projects / KleinBüro ---------- */
.cts-ref-projects{
  padding-top:30px!important;
  padding-bottom:30px!important;
}

.cts-ref-projects-grid{
  grid-template-columns:minmax(280px,.85fr) minmax(0,1.45fr)!important;
  gap:34px!important;
  align-items:center!important;
}

.cts-ref-project-intro{
  min-width:0!important;
}

.cts-ref-project-intro>span{
  margin-bottom:6px!important;
  font-size:.7rem!important;
}

.cts-ref-project-intro h2{
  margin-bottom:8px!important;
  font-size:clamp(1.55rem,2vw,1.95rem)!important;
  line-height:1.12!important;
}

.cts-ref-project-intro p{
  max-width:34rem!important;
  margin-bottom:14px!important;
  font-size:.83rem!important;
  line-height:1.5!important;
}

.cts-ref-project-outline{
  min-height:36px!important;
  padding:0 14px!important;
  font-size:.72rem!important;
}

/* KleinBüro card */
.cts-ref-kb-card{
  grid-template-columns:70px minmax(0,1.15fr) minmax(220px,.95fr)!important;
  grid-template-rows:auto auto!important;
  gap:10px 18px!important;
  padding:14px 16px!important;
  border-radius:10px!important;
}

.cts-ref-kb-logo{
  width:64px!important;
  height:64px!important;
  font-size:3rem!important;
  border-radius:9px!important;
}

.cts-ref-kb-copy h3{
  margin-bottom:3px!important;
  font-size:1.35rem!important;
  line-height:1.05!important;
}

.cts-ref-kb-copy p{
  margin:3px 0!important;
  font-size:.75rem!important;
}

.cts-ref-kb-copy small{
  font-size:.68rem!important;
}

.cts-ref-kb-card ul{
  font-size:.71rem!important;
  line-height:1.55!important;
}

.cts-ref-kb-button{
  min-height:32px!important;
  padding:0 12px!important;
  font-size:.7rem!important;
  border-radius:6px!important;
}

/* ---------- Footer ---------- */
.cts-ref-footer-shell{
  margin-top:0!important;
}

.cts-ref-footer{
  min-height:72px!important;
  grid-template-columns:200px minmax(0,1fr) 200px!important;
  gap:20px!important;
}

.cts-ref-footer-brand{
  width:168px!important;
  height:46px!important;
}

.cts-ref-footer-nav{
  gap:22px!important;
}

.cts-ref-footer-nav a{
  font-size:.69rem!important;
  white-space:nowrap!important;
}

.cts-ref-footer-copy{
  font-size:.64rem!important;
  line-height:1.35!important;
}

/* ---------- Medium desktop ---------- */
@media (min-width:901px) and (max-width:1180px){
  .cts-ref-projects{
    padding:28px 26px!important;
  }

  .cts-ref-projects-grid{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }

  .cts-ref-kb-card{
    grid-template-columns:64px minmax(0,1fr) minmax(220px,.9fr)!important;
  }

  .cts-ref-footer{
    grid-template-columns:170px minmax(0,1fr) 170px!important;
  }

  .cts-ref-footer-nav{
    gap:14px!important;
  }
}

/* ---------- Mobile ---------- */
@media (max-width:900px){
  .cts-ref-projects{
    padding:24px 16px!important;
  }

  .cts-ref-projects-grid{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  .cts-ref-project-intro h2{
    font-size:1.4rem!important;
  }

  .cts-ref-kb-card{
    grid-template-columns:54px minmax(0,1fr)!important;
    grid-template-rows:auto auto auto!important;
    gap:9px 12px!important;
    padding:12px!important;
  }

  .cts-ref-kb-logo{
    width:50px!important;
    height:50px!important;
    font-size:2.3rem!important;
  }

  .cts-ref-kb-copy h3{
    font-size:1.12rem!important;
  }

  .cts-ref-kb-card ul{
    grid-column:1 / -1!important;
    font-size:.74rem!important;
  }

  .cts-ref-kb-button{
    grid-column:1 / -1!important;
    min-height:36px!important;
  }

  .cts-ref-footer{
    min-height:0!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:18px 16px!important;
  }

  .cts-ref-footer-brand{
    width:150px!important;
    height:42px!important;
  }

  .cts-ref-footer-nav{
    gap:8px 14px!important;
    flex-wrap:wrap!important;
  }

  .cts-ref-footer-copy{
    font-size:.64rem!important;
  }
}
