
:root {
  --primary-color: #000;
  --secondary-color: #fff;
  --accent-color: #9FACDC;
  --text-color: #333;
  --link-color: #666;
  --text-bright: #999;
  --section-bg-color: #fafafa;
  --section-text-color: #555;
  --feature-background: #333;
  --feature-text-color: #fff;
  --feature-h3: #9FACDC;
  --section-spacing: 100px;
  --bg-primary: #000000;
  --button-color: #9FACDC;
  --accent-color-2: #00a3ff;
  --card-bg: #111111;

  --topo-gmbh: #1c1c27;
  --topo-software: #9fabd7;
  --topo-agency: #8fa1af;
  --topo-textil: #1ca591; 
  --topo-laims: #b5ff3b; 
}

/* SPA Sichtbarkeit – ADD (einmalig) */
.page{display:none}
.page.active{display:block}

/* Navbar Layer – ADD (falls nicht vorhanden) */
.navbar{position:relative;z-index:1001}

/* ADD (eigener Block, keine Kollisionen) */
/* .tk-hero{display:flex;min-height:100vh;position:relative;background:linear-gradient(135deg,var(--card-bg,#111) 0%,#1a1a1a 100%)} */
.tk-hero{display:flex;min-height:100vh;position:relative;background:url('./assets/hero/abstract.png'); background-repeat: none; background-size: cover;}
.tk-hero__content{flex:1;display:flex;flex-direction:column;justify-content:center; align-items: flex-start; text-align: left;z-index: 3;
  max-width: 1200px;
}
.tk-hero__title{font-size:3.5rem;font-weight:700;background:linear-gradient(45deg,var(--accent-color),var(--accent-color-2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.tk-hero__subtitle{font-size:1.2rem;}
.tk-hero__buttons{display:flex;gap:1rem;margin-top:2rem}
.tk-btn{padding:1rem 2rem;border-radius:50px;text-decoration:none;font-weight:600;transition:.3s}
.tk-btn--primary{background:linear-gradient(45deg,var(--button-color),var(--accent-color-2));color:var(--secondary-color);box-shadow:0 4px 15px rgba(159,172,220,.35)}
.tk-btn--secondary{border:2px solid var(--button-color);color:var(--button-color);background:transparent}
.tk-btn--primary:hover,.tk-btn--secondary:hover{transform:translateY(-2px)}
.tk-btn--secondary:hover{background:var(--button-color);color:var(--secondary-color)}
.tk-hero__image{flex:0;position:relative;}
#tkHeroBg{position:absolute;inset:0;background-size:cover;background-position:center;transition:all .8s cubic-bezier(.4,0,.2,1);opacity:0;transform:scale(1.1)}
#tkHeroBg.is-active{opacity:1;transform:scale(1)}

.tk-tiles{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%);z-index:10}
.tk-tiles__wrapper{display:flex;gap:1.5rem;padding:1rem;background:rgba(0,0,0,.8);backdrop-filter:blur(10px);border-radius:20px;border:1px solid rgba(255,255,255,.1); background: none;}
.tk-tile{padding:0rem;border-radius:15px;text-align:center;cursor:pointer;transition:.3s;min-width:100px;background:var(--card-bg);border:1px solid rgba(255,255,255,.1); max-height: 200px;background:none;}
.tk-tile:hover{transform:translateY(-5px)}
.tk-tile.is-active{background:transparent;transform:translateY(-8px);box-shadow:0 15px 40px rgba(159,172,220,.6)}
/* .tk-tile.is-active{background:linear-gradient(45deg,var(--accent-color),var(--button-color));transform:translateY(-8px);box-shadow:0 15px 40px rgba(159,172,220,.4)} */
.tk-tile__title,.tk-tile__text,.tk-tile__icon{color:var(--secondary-color)}
.tk-tiles.is-gone{opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}

.tk-tile__logo{width: 100%; height: 100%; max-width: 100px;border-radius: 15px;}
.tk-tile{padding: 0rem;}

/* Laptop – soft overlap */
@media (max-width:1440px){
  .tk-hero{padding-bottom:8rem}
  .tk-tiles{position:absolute;bottom:-.75rem;left:50%;transform:translateX(-50%)}
  .tk-tiles__wrapper{gap:1rem}
  .tk-tile{min-width:100px;padding:1.25;}
  .tk-tile__text{font-size: 12px;}

}
/* Tablet – no overlap, rail scroll */
@media (max-width:1024px){
  .tk-hero{padding-bottom:0;flex-direction:column}
  .tk-hero__content{padding:2rem;text-align:center}
  .tk-hero__title{font-size:2.5rem}
  .tk-hero__image{min-height:50vh}
  .tk-tiles{position:static;transform:none;margin:1.5rem auto 0}
  .tk-tiles__wrapper{flex-direction:row;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:1rem;padding:.75rem 1rem}
  .tk-tile{min-width:100px;max-width:100px;}
  
}
@media (max-width:768px){
  .tk-hero__title{font-size:2rem}
  .tk-hero__subtitle{font-size:1rem}
  .tk-hero__buttons{flex-direction:column;align-items:center}
  .tk-btn{width:200px;text-align:center}
  .tk-btn--primary{display: none;}
  .tk-btn--secondary{height: auto; padding: 10px;}
  .tk-hero__content{justify-content: center;align-items: flex-start;}
  .tk-hero__subtitle{text-align: left;}
}
@media (max-width:480px){
  .tk-hero__content{padding:1.5rem}
  .tk-hero__title{font-size:1.8rem}
  .tk-tiles__wrapper{padding:.5rem;gap:.5rem}
  .tk-tile{padding:1rem;min-width:200px}
}

.tk-tiles__wrapper{ position: relative; }
.tk-tiles__progress{
  position:absolute; left:12px; right:12px; bottom:-8px;
  height:3px; background:rgba(255,255,255,.12);
  border-radius:2px; overflow:hidden; pointer-events:none;
}
.tk-tiles__progress::before{
  content:""; display:block; height:100%; width:0%;
  background: var(--progress-color, #9fabd7);
  transform-origin:left;
}
.tk-tiles__progress.is-anim::before{
  animation: tkTilesProgress var(--cycle, 5000ms) linear forwards;
}
@keyframes tkTilesProgress{ from{width:0%} to{width:100%} }
@media (max-width:1024px){
  .tk-tiles__progress{ bottom:-6px; left:8px; right:8px; }
}
/* Sanftes Ausblenden der Leiste beim Scrollen */
.tk-tiles.is-gone{opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}
