/* GeoStars UI-Enhancements - additive Ebene, monochromes Design */
@media (prefers-reduced-motion: no-preference){
  .gs-reveal{opacity:0;transform:translateY(18px);transition:opacity .6s cubic-bezier(.2,.6,.2,1),transform .6s cubic-bezier(.2,.6,.2,1)}
  .gs-reveal.gs-in{opacity:1;transform:none}
}
.card,.blog-card{transition:transform .25s cubic-bezier(.2,.6,.2,1),box-shadow .25s,border-color .25s}
.card:hover,.blog-card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(10,10,10,.09);border-color:var(--text,#0A0A0A)}
.btn-primary-hero,.btn-outline-hero,.btn-dark,.btn-ghost,.btn-accent,.dd-cta-btn{transition:transform .18s,box-shadow .18s,background .18s,color .18s,border-color .18s}
.btn-primary-hero:hover,.btn-dark:hover,.btn-accent:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(10,10,10,.18)}
.btn-outline-hero:hover,.btn-ghost:hover{transform:translateY(-2px);border-color:var(--text,#0A0A0A)}
.cmp-table tbody tr,.cmp-table tr{transition:background .15s}
.cmp-table tr:hover td{box-shadow:inset 0 0 0 999px rgba(10,10,10,.025)}
.faq-ans.open{animation:gsFade .35s ease}
@keyframes gsFade{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.faq-btn:hover{color:#000}
.faq-btn:hover .ico{transform:scale(1.25)}
.faq-btn.open:hover .ico{transform:rotate(45deg) scale(1.25)}
.nav.gs-scrolled{box-shadow:0 6px 24px rgba(10,10,10,.07)}
.footer-col a{transition:color .15s,transform .15s;display:inline-block}
.footer-col a:hover{transform:translateX(3px)}
.hero{position:relative}
.hero .wrap{position:relative;z-index:1}
.gs-star{position:absolute;color:var(--text,#0A0A0A);opacity:.10;pointer-events:none;user-select:none;z-index:0}
@media (prefers-reduced-motion: no-preference){.gs-star{animation:gsFloat 7s ease-in-out infinite}}
@keyframes gsFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-14px) rotate(14deg)}}
#gs-top{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border-radius:999px;background:var(--text,#0A0A0A);color:#fff;border:none;cursor:pointer;font-size:17px;line-height:1;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .25s,visibility .25s,transform .25s;z-index:200;box-shadow:0 10px 24px rgba(10,10,10,.25);font-family:var(--font)}
#gs-top.gs-show{opacity:1;visibility:visible;transform:none}
#gs-top:hover{transform:translateY(-3px)}
#gs-progress{position:fixed;top:0;left:0;height:2px;background:var(--text,#0A0A0A);width:0;z-index:300}
::selection{background:#0A0A0A;color:#fff}
a:focus-visible,button:focus-visible{outline:2px solid var(--text,#0A0A0A);outline-offset:3px;border-radius:4px}
.tldr,.info-box,.toc{transition:box-shadow .25s}
.tldr:hover,.info-box:hover,.toc:hover{box-shadow:0 10px 30px rgba(10,10,10,.06)}
.logo-mark{transition:transform .45s cubic-bezier(.2,.6,.2,1);display:inline-block}
.logo:hover .logo-mark{transform:rotate(90deg)}
.trust-pill{transition:background .2s,border-color .2s}
.trust-pill:hover{background:rgba(10,10,10,.04)}
.toc a{transition:font-weight .1s,color .15s}
.toc a.gs-active{font-weight:700}
.gs-img-frame{border:1px solid var(--border,#E6E6E6);border-radius:16px;overflow:hidden;box-shadow:0 18px 44px rgba(10,10,10,.10);transition:transform .3s,box-shadow .3s}
.gs-img-frame:hover{transform:translateY(-4px);box-shadow:0 26px 56px rgba(10,10,10,.14)}
.gs-img-frame img{display:block;width:100%;height:auto}
.gs-icon{width:22px;height:22px;vertical-align:-4px;margin-right:8px}
/* SVG-Icon-System (ersetzt Emojis) */
.gi{width:1.2em;height:1.2em;display:inline-block;vertical-align:-0.22em;flex-shrink:0;color:inherit}
.card-icon .gi{width:30px;height:30px}
.dd-icon .gi{width:17px;height:17px;vertical-align:-3px}
.prov-icon .gi{width:26px;height:26px}
.hero-badge .gi{width:14px;height:14px;vertical-align:-2px;margin-right:4px}
.topbar .gi{width:13px;height:13px;vertical-align:-2px}
.feat-list .gi,.tldr .gi{width:1.05em;height:1.05em;vertical-align:-0.15em}

/* Mobile-Fixes (Responsive-Audit Juli 2026) */
.t-wrap{overflow-x:auto !important;-webkit-overflow-scrolling:touch}
@media (max-width:640px){
  html,body{overflow-x:clip}
  .hero-2col{grid-template-columns:minmax(0,1fr) !important}
  .hero-2col > *{min-width:0}
  .hero-btns,.hero-trust{flex-wrap:wrap}
  .hero-left h1{font-size:clamp(30px,9vw,40px) !important;overflow-wrap:break-word}
  .stats-row{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px}
  .stat-block{padding:24px 16px !important}
  .frag-frame{max-width:100%;box-sizing:border-box}
  .cmp-table{font-size:13px}
  .cmp-table td,.cmp-table th{padding:10px 10px}
  #gs-top{right:14px;bottom:14px;width:40px;height:40px}
}

/* Sticky Mobile CTA */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:90;display:none;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(250,250,250,.96);backdrop-filter:blur(8px);border-top:1px solid var(--border,#E6E6E6);transform:translateY(110%);transition:transform .3s ease}
.sticky-cta.on{transform:translateY(0)}
.sticky-cta a{display:block;text-align:center;background:#0A0A0A;color:#fff;font-weight:700;font-size:15px;padding:13px 20px;border-radius:999px;text-decoration:none}
@media(max-width:768px){.sticky-cta{display:block}}
