/* Local Webfont: Inter Tight (variable) */
@font-face{
  font-family:"Inter Tight";
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url("fonts/InterTight-VariableFont_wght.ttf") format("truetype");
}

/* optional: italic */
@font-face{
  font-family:"Inter Tight";
  font-style:italic;
  font-weight:100 900;
  font-display:swap;
  src:url("fonts/InterTight-Italic-VariableFont_wght.ttf") format("truetype");
}
:root{
  --nav-h:96px;
  --promo-h:0px;
  --c-bg:#424344;
  --c-bg-2:#2f3031;
  --c-text:#f5f7fa;
  --c-muted:rgba(245,247,250,.72);
  --c-border:rgba(255,255,255,.12);
  --c-card:rgba(255,255,255,.06);
  --c-gold:#FFD700;
  --c-blue:#155C8F;
  /* Logo-/Shield-Akzent (neon/cyber blue) */
  --c-cyan:#4dd7ff;
  --c-cyan-2:#00baff;
  --c-border-blue:rgba(77,215,255,.18);
  --shadow:0 12px 40px rgba(0,0,0,.35);
  --radius:18px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Inter Tight",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--c-text);
  background:
    radial-gradient(1000px 620px at 50% 0%, rgba(0,186,255,.14), transparent 62%),
    radial-gradient(1100px 600px at 15% 10%, rgba(21,92,143,.32), transparent 60%),
    radial-gradient(900px 500px at 85% 19%, rgba(21,92,143,.18), transparent 55%),
    linear-gradient(180deg, var(--c-bg), var(--c-bg-2));
  min-height:100vh;
}

/* Global fixed navbar offset (für alle Seiten mit <main>) */
main{padding-top:96px;}
body.is-home.has-promo-banner main{padding-top:calc(96px + var(--promo-h));}
main#top{padding-top:0;}


/* Subtiles "Tech"-Grid als Overlay (passt zum Shield/Binary Look) */
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    linear-gradient(transparent 0 0),
    repeating-linear-gradient(90deg, rgba(77,215,255,.06) 0 1px, transparent 1px 72px),
    repeating-linear-gradient(0deg, rgba(77,215,255,.04) 0 1px, transparent 1px 72px);
  opacity:.06;
  mix-blend-mode:screen;
}

main, nav, footer{position:relative; z-index:1}

/* Offset anchors for fixed navbar */
section[id], hr[id]{scroll-margin-top:92px}

::selection{background:rgba(0,186,255,.28); color:var(--c-text)}

a{color:var(--c-gold);text-decoration:none}
a:hover{color:#ffe25c}

/* Accessibility */
:focus-visible{outline:2px solid var(--c-gold); outline-offset:3px; border-radius:10px}

/* Layout helpers */
.section{padding:84px 0}
@media (max-width: 991px){.section{padding:64px 0}}

.container-xxl{max-width:1200px}

/* Navbar */
.navbar-dertob{
  background:rgba(22,26,30,.72);
  backdrop-filter: blur(10px);
  border-bottom:1px solid rgba(77,215,255,.10);
}
.navbar-dertob .navbar-brand{
  display:flex;align-items:center;gap:12px;
  font-weight:600; letter-spacing:1px;
  color:var(--c-text);
}
.navbar-dertob .brand-sub{font-weight:200; font-size:.85rem; letter-spacing:.5px; color:var(--c-muted);margin-top: -7px;}
.navbar-dertob .nav-link{color:rgba(245,247,250,.85); font-weight:300}
.navbar-dertob .nav-link:hover{/*color:var(--c-text);*/ color: var(--c-gold);}
.navbar-dertob .nav-link.active{color:var(--c-gold)}
.navbar-dertob .navbar-toggler{border:1px solid var(--c-border)}
.navbar-dertob .navbar-toggler:focus{box-shadow:none}
.navbar-dertob .navbar-toggler-icon{
  background-image:url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27rgba%28245,247,250,0.85%29%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%272%27 d=%27M4 7h22M4 15h22M4 23h22%27/%3e%3c/svg%3e");
}

.logo{
  width:40px;height:40px; 
  /*border-radius:999px;*/
  /*box-shadow:0 0 0 2px rgba(255,215,0,.14);*/
  filter:drop-shadow(0 0 10px rgba(0,186,255,.18));
}

/* Hero */
.hero{
  position:relative;
  padding:120px 0 84px;
  overflow:hidden;
}
.hero::before{
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(90deg, rgba(14,18,22,.86), rgba(47,48,49,.42)),
    url("../images/coding-bg.jpg") center/cover no-repeat;
  opacity:.85;
}
.hero::after{
  content:"";
  position:absolute; top:0; right:0;
  width:14px; height:100%;
  background:linear-gradient(180deg, rgba(0,186,255,.95), rgba(21,92,143,.20));
  opacity:.95;
  box-shadow:-8px 0 28px rgba(0,186,255,.18);
}
.hero .hero-inner{position:relative; z-index:1}

/* Hero-Bild passend zum Shield-Look */
.hero-media{position:relative}
.hero-shield{
  width:100%;
  border-radius:18px;
  display:block;
  /*box-shadow:
    0 28px 80px rgba(0,0,0,.52),
    0 0 0 1px rgba(77,215,255,.16),
    0 0 44px rgba(0,186,255,.18);*/
}
.pfw3{font-size:18px;font-weight:300}
.pfw16{font-size:16px;font-weight:300}
.fw3{font-weight:300}
.fw2{font-weight:200}
.fc1{color: #dee2e6}
.kicker{
  display:inline-flex; align-items:center; gap:10px;
  padding:8px 12px;
  background:rgba(255,255,255,.06);
  /*border:1px solid var(--c-border);*/
  border-radius:999px;
  color:rgba(245,247,250,.92);
  /*font-weight:650;*/
}
.kicker .dot{display:none;width:8px;height:8px;border-radius:999px;background:var(--c-gold); box-shadow:0 0 0 4px rgba(255,215,0,.14)}

.hero h1{
  font-weight:700;
  letter-spacing:.2px;
  line-height:1.05;
}
.hero p{color:rgba(245,247,250,.80); font-size:1.08rem; line-height:1.55; font-weight:300}

.hero-card{
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.04));
  /*border:1px solid var(--c-border);*/
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:18px;
}

/* Buttons */
.btn{border-radius:12px; letter-spacing:.2px}
.btn-gold{
  background:var(--c-gold);
  border:1px solid rgba(255,215,0,.45);
  color:#1c1d1e;
  font-weight:600
}
.btn-gold:hover{background:#ffe25c; border-color:#ffe25c; color:#1c1d1e}

.btn-blue{
  /*background:linear-gradient(180deg, rgba(0,186,255,.92), rgba(21,92,143,.98));*/
  background: linear-gradient(180deg, rgba(0, 186, 255, .46), rgba(21, 92, 143, .14));
  /*border:1px solid rgba(77,215,255,.22);*/
  color:var(--c-text);
  box-shadow:0 14px 34px rgba(0,186,255,.12);
  font-weight:300
}
.btn-blue:hover{
  /*background:linear-gradient(180deg, rgba(0,186,255,1), rgba(21,92,143,1));*/
  border-color:rgba(77,215,255,.46); 
  color:var(--c-text)
}

.btn-ghost{
  /*background:transparent;*/
  background: #00000030;
  /*border:1px solid rgba(77,215,255,.14);*/
  color:rgba(245,247,250,.92);
  font-weight:300
}
.btn-ghost:hover{/*border-color:rgba(77,215,255,.28);*/ border-color: rgba(255, 215, 0, .35); color:var(--c-text)}

/* Cards */
.card-glass{
  /* IMPORTANT: .card-glass is also used on <a> cards ("Weitere Software").
     If <a> stays inline, browsers may fragment the background/border into
     multiple boxes (visible as the vertical "pill" artifacts). */
  display:block;
  position:relative;
  border:1px solid transparent;
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  /*background:
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.04)) padding-box,
    linear-gradient(135deg, rgba(77,215,255,.22), rgba(255,255,255,.10), rgba(0,0,0,0)) border-box;*/
}

.card-glass:hover{
  background:linear-gradient(135deg, rgba(77,215,255,.08), rgba(0,0,0,0)) border-box;
  box-shadow:0 16px 56px rgba(0,0,0,.82), 0 0 40px rgba(0,186,255,.08);
}

.service-icon{
  width:48px;height:48px;
  border-radius:14px;
  /*background:linear-gradient(180deg, rgba(0,186,255,.46), rgba(21,92,143,.14));*/
  border:1px solid rgba(77,215,255,.30);
  display:grid; 
  place-items:center;
  box-shadow:0 10px 26px rgba(0,0,0,.28), 0 0 24px rgba(0,186,255,.10);
}
.service-icon span{
  width:14px;height:14px;border-radius:999px;
  /*background:var(--c-gold);*/
  background: #dee2e6;
  /*box-shadow:0 0 0 6px rgba(255,215,0,.14);*/
  box-shadow: 0 0 0 6px rgb(255 255 255 / 8%);
}

.card-glass h3{font-weight:400;/*color:var(--c-gold);*/}
.card-glass p{color:var(--c-muted)}

.hr-soft{border:none; height:1px; background:linear-gradient(90deg, transparent, rgba(255,255,255,.16), transparent)}

/* Software grid */

.software-thumb{
  width:100%;
  aspect-ratio:16/9;
  border-radius:16px;
  overflow:hidden;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(77,215,255,.10);
  box-shadow:0 10px 26px rgba(0,0,0,.28);
}
.software-thumb img{
  width:100%; height:100%;
  display:block;
  object-fit:cover;
}

.software-modal-hero{
  width:100%;
  aspect-ratio:16/9;
  border-radius:18px;
  overflow:hidden;
  background:rgba(255,255,255,.04);
  /*border:1px solid rgba(77,215,255,.12);*/
}
.software-modal-hero img{width:100%; height:100%; display:block; object-fit:contain}

.software-card .badgeCard{
  /*display:none;*/
  /*background:rgba(255,215,0,.18);*/
  /*background: rgba(0, 0, 0, .2);*/
  /*color:var(--c-gold);*/
  color: #e4e4e4;
  /*border:1px solid rgba(255,215,0,.35);*/
  /*border: 1px solid rgba(77, 215, 255, .10);*/
  /*box-shadow: 0 4px 34px rgba(0, 186, 255, .22);*/
  font-weight: 200;
  font-size: 13px;
  font-style: italic;
}

/* Make the whole software card clickable (opens modal) */
.software-card{cursor:pointer; transition:transform .15s ease, border-color .15s ease}
.software-card:hover{transform:translateY(-2px); border-color:rgba(255,215,0,.78)}
.software-card:focus-visible{outline:2px solid var(--c-gold); outline-offset:4px; border-radius:var(--radius)}
.software-card a, .software-card button{cursor:pointer}

/* Modal screenshot thumbnails (optional: multiple images per product) */
.software-modal-thumbs{display:flex; gap:10px; flex-wrap:wrap}
.software-thumb-btn{
  width:96px;
  aspect-ratio:16/9;
  border-radius:14px;
  overflow:hidden;
  border:1px solid var(--c-border);
  background:rgba(255,255,255,.04);
  padding:0;
}
.software-thumb-btn img{width:100%; height:100%; display:block; object-fit:cover}
.software-thumb-btn:hover{border-color:rgba(255,215,0,.35)}
.software-thumb-btn.is-active{border-color:rgba(255,215,0,.72); box-shadow:0 0 0 3px rgba(255,215,0,.12)}

.pill{
  display:inline-flex; align-items:center; gap:8px;
  padding:8px 12px;
  /*border:1px solid rgba(77,215,255,.10);*/
  border-radius:999px;
  background:rgba(255,255,255,.04);
  /*color:rgba(245,247,250,.86);*/
  color: var(--c-gold);
  font-weight:300;
  font-size: 14px;
}


/* ------------------------------------------------------------
   Highlight-Chips mit Icon (aus JSON "highlights")
   - JSON: { "highlights": [ {"icon":"lock","text":"AES-256-GCM"}, ... ] }
   - oder: "lock|AES-256-GCM"
------------------------------------------------------------ */
.hl-chips{display:flex; flex-wrap:wrap; gap:10px; margin-top:10px}
.hl-chip{
  display:inline-flex; align-items:center; gap:10px;
  padding:10px 14px;
  border-radius:999px;
  /*background:rgba(255,255,255,.04);*/
  background: rgba(77, 215, 255, .10);
  /*border:1px solid rgba(77,215,255,.12);*/
  color:rgba(245,247,250,.92);
  font-weight:300;
  line-height:1;
  box-shadow:0 10px 26px rgba(0,0,0,.18);
  backdrop-filter: blur(10px);
  font-size: 14px;
}
.hl-chip:hover{border-color:rgba(255,215,0,.28); background:rgba(255,255,255,.06)}
.hl-chip .hl-text{white-space:nowrap}
.hl-chip .ico{
  width:16px;height:16px;
  display:inline-block;
  background:rgba(245,247,250,.90);
  -webkit-mask-repeat:no-repeat;
  -webkit-mask-position:center;
  -webkit-mask-size:contain;
  mask-repeat:no-repeat;
  mask-position:center;
  mask-size:contain;
  flex:0 0 auto;
}
.ico-lock{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M17%209h-1V7a4%204%200%200%200-8%200v2H7a2%202%200%200%200-2%202v9a2%202%200%200%200%202%202h10a2%202%200%200%200%202-2v-9a2%202%200%200%200-2-2Zm-7-2a2%202%200%200%201%204%200v2h-4V7Zm7%2013H7v-9h10v9Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M17%209h-1V7a4%204%200%200%200-8%200v2H7a2%202%200%200%200-2%202v9a2%202%200%200%200%202%202h10a2%202%200%200%200%202-2v-9a2%202%200%200%200-2-2Zm-7-2a2%202%200%200%201%204%200v2h-4V7Zm7%2013H7v-9h10v9Z'/%3E%3C/svg%3E");}
.ico-target{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M11%202h2v3.06A7.002%207.002%200%200%201%2018.94%2011H22v2h-3.06A7.002%207.002%200%200%201%2013%2018.94V22h-2v-3.06A7.002%207.002%200%200%201%205.06%2013H2v-2h3.06A7.002%207.002%200%200%201%2011%205.06V2Zm1%205a5%205%200%201%200%200%2010a5%205%200%200%200%200-10Zm0%202a3%203%200%201%201%200%206a3%203%200%200%201%200-6Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M11%202h2v3.06A7.002%207.002%200%200%201%2018.94%2011H22v2h-3.06A7.002%207.002%200%200%201%2013%2018.94V22h-2v-3.06A7.002%207.002%200%200%201%205.06%2013H2v-2h3.06A7.002%207.002%200%200%201%2011%205.06V2Zm1%205a5%205%200%201%200%200%2010a5%205%200%200%200%200-10Zm0%202a3%203%200%201%201%200%206a3%203%200%200%201%200-6Z'/%3E%3C/svg%3E");}
.ico-user{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M12%2012a5%205%200%201%200-5-5a5%205%200%200%200%205%205Zm0%202c-4.42%200-8%202.24-8%205v3h16v-3c0-2.76-3.58-5-8-5Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M12%2012a5%205%200%201%200-5-5a5%205%200%200%200%205%205Zm0%202c-4.42%200-8%202.24-8%205v3h16v-3c0-2.76-3.58-5-8-5Z'/%3E%3C/svg%3E");}
.ico-shield{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M12%202l8%204v6c0%205-3.4%209.74-8%2010c-4.6-.26-8-5-8-10V6l8-4Zm0%202.18L6%206.76V12c0%203.94%202.44%207.64%206%208c3.56-.36%206-4.06%206-8V6.76l-6-2.58Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M12%202l8%204v6c0%205-3.4%209.74-8%2010c-4.6-.26-8-5-8-10V6l8-4Zm0%202.18L6%206.76V12c0%203.94%202.44%207.64%206%208c3.56-.36%206-4.06%206-8V6.76l-6-2.58Z'/%3E%3C/svg%3E");}
.ico-key{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M7.5%2014a5.5%205.5%200%201%201%204.87-8H22v4h-2v2h-2v2h-3.63A5.5%205.5%200%200%201%207.5%2014Zm0-2a3.5%203.5%200%201%200-3.5-3.5A3.5%203.5%200%200%200%207.5%2012Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M7.5%2014a5.5%205.5%200%201%201%204.87-8H22v4h-2v2h-2v2h-3.63A5.5%205.5%200%200%201%207.5%2014Zm0-2a3.5%203.5%200%201%200-3.5-3.5A3.5%203.5%200%200%200%207.5%2012Z'/%3E%3C/svg%3E");}
.ico-bolt{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M13%202L3%2014h7l-1%208l10-12h-7l1-8Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M13%202L3%2014h7l-1%208l10-12h-7l1-8Z'/%3E%3C/svg%3E");}
.ico-download{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M12%203h2v9l3.5-3.5l1.4%201.4L13%2016.8L7.1%209.9l1.4-1.4L12%2012V3ZM5%2019h14v2H5v-2Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M12%203h2v9l3.5-3.5l1.4%201.4L13%2016.8L7.1%209.9l1.4-1.4L12%2012V3ZM5%2019h14v2H5v-2Z'/%3E%3C/svg%3E");}
.ico-cart{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M7%2018a2%202%200%201%200%200%204a2%202%200%200%200%200-4Zm10%200a2%202%200%201%200%200%204a2%202%200%200%200%200-4ZM6.2%206l.7%204h10.5l1.2-4H6.2ZM5%204h15.5a1%201%200%200%201%201%201.3l-2%206.7a1%201%200%200%201-1%20.7H7.1l-.3%201.6h11.7v2H6a1%201%200%200%201-1-1.2L6.2%206.2L5.8%204H3V2h3a1%201%200%200%201%201%20.8L7.2%204Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M7%2018a2%202%200%201%200%200%204a2%202%200%200%200%200-4Zm10%200a2%202%200%201%200%200%204a2%202%200%200%200%200-4ZM6.2%206l.7%204h10.5l1.2-4H6.2ZM5%204h15.5a1%201%200%200%201%201%201.3l-2%206.7a1%201%200%200%201-1%20.7H7.1l-.3%201.6h11.7v2H6a1%201%200%200%201-1-1.2L6.2%206.2L5.8%204H3V2h3a1%201%200%200%201%201%20.8L7.2%204Z'/%3E%3C/svg%3E");}
.ico-check{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M9%2016.2l-3.5-3.5L4%2014.2l5%205l11-11l-1.4-1.4L9%2016.2Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M9%2016.2l-3.5-3.5L4%2014.2l5%205l11-11l-1.4-1.4L9%2016.2Z'/%3E%3C/svg%3E");}
.ico-chat{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M4%204h16a2%202%200%200%201%202%202v12a2%202%200%200%201-2%202H8l-4%204V6a2%202%200%200%201%202-2Zm0%2014.17L7.17%2016H20V6H4v12.17Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M4%204h16a2%202%200%200%201%202%202v12a2%202%200%200%201-2%202H8l-4%204V6a2%202%200%200%201%202-2Zm0%2014.17L7.17%2016H20V6H4v12.17Z'/%3E%3C/svg%3E");}
.ico-star{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M12%2017.3l-6.18%203.7l1.64-7.03L2%209.24l7.19-.61L12%202l2.81%206.63L22%209.24l-5.46%204.73L18.18%2021L12%2017.3Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='black'%20d='M12%2017.3l-6.18%203.7l1.64-7.03L2%209.24l7.19-.61L12%202l2.81%206.63L22%209.24l-5.46%204.73L18.18%2021L12%2017.3Z'/%3E%3C/svg%3E");}
@media (max-width: 575px){
  .hl-chip{padding:8px 12px; gap:8px}
  .hl-chip .hl-text{font-size:14px}
}
.form-control, .form-select{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(77,215,255,.10);
  color:var(--c-text);
  border-radius:12px;
}
.form-control:focus, .form-select:focus{
  background:rgba(255,255,255,.06);
  border-color:rgba(77,215,255,.42);
  box-shadow:none;
  color:var(--c-text);
}

/* Filter chips (Software-Kategorie) */
.filter-chips{display:flex; flex-wrap:wrap; gap:5px; margin-top:15px}
.filter-chip{
  appearance:none;
  border:1px solid var(--c-border);
  background:rgba(255,255,255,.04);
  color:rgba(245,247,250,.86);
  border-radius:999px;
  padding:8px 12px;
  /*font-weight:700;*/
  letter-spacing:.2px;
  line-height:1;
  cursor:pointer;
  box-shadow:0 10px 26px rgba(0,0,0,.18);
  backdrop-filter: blur(10px);
}
.filter-chip:hover{border-color:rgba(255,215,0,.35); background:rgba(255,255,255,.06)}
.filter-chip:focus,
.filter-chip:focus-visible{
  outline:2px solid var(--c-gold);
  outline-offset:3px;
  border-color:rgba(255,215,0,.65);
  box-shadow:0 0 0 4px rgba(255,215,0,.14);
}

.filter-chip.is-active{/*background:rgba(255,215,0,.14);*/ /*border-color:rgba(255,215,0,.55);*/ color:var(--c-gold)}

.form-control::placeholder{color:rgba(245,247,250,.45)}

footer{
  border-top:1px solid rgba(77,215,255,.10);
  background:rgba(18,22,26,.65);
}

.small-muted{color:rgba(245,247,250,.60); font-weight:300}

/* Subtle entrance animation */
.reveal{opacity:0; transform:translateY(14px); transition:opacity .6s ease, transform .6s ease}
.reveal.is-visible{opacity:1; transform:none}


/* Modal (custom, no Bootstrap JS) */
body.modal-open{overflow:hidden}

.modal-dertob{
  position:fixed; inset:0;
  display:none;
  /*background:rgba(0,0,0,.62);*/
  z-index:1050;
  padding:24px;
}
.modal-dertob.open{display:flex; align-items:center; justify-content:center}

.modal-dertob .modal-panel{
  width:min(720px, 100%);
  max-height:min(82vh, 900px);
  overflow:auto;
  background:rgba(18,22,26,.96);
  background: rgb(33 35 37);
  /*border:1px solid rgba(77,215,255,.14);*/
  border-radius:24px;
  box-shadow:0 30px 80px rgba(0,0,0,.60), 0 0 52px rgba(0,186,255,.10);
}

.modal-dertob .modal-header{
  display:flex; align-items:flex-start; justify-content:space-between; gap:14px;
  padding:18px 18px 10px;
  border-bottom:1px solid rgba(255,255,255,.08);
}

.modal-dertob .modal-title{/*font-weight:900;*/ margin:0; line-height:1.15}

.modal-dertob .modal-close{
  /*border:1px solid rgba(77,215,255,.16);*/
  border: 1px solid rgba(255, 215, 0, .28);
  background:rgba(255,255,255,.06);
  color:var(--c-text);
  border-radius:12px;
  padding:8px 12px;
  font-weight:800;
}
.modal-dertob .modal-close:hover{
  /*border-color:rgba(77,215,255,.28);*/
  border-color: rgba(255, 215, 0, .55);
  color: var(--c-gold);
}

.modal-dertob .modal-body{padding:14px 18px 18px}


.download-modal .modal-panel{width:min(860px, 100%)}
.download-modal-note,
.download-empty-state{
  border:1px solid rgba(255,215,0,.18);
  background:rgba(255,255,255,.04);
  border-radius:18px;
  padding:14px 16px;
  color:rgba(245,247,250,.82);
  font-weight:300;
}
.download-modal-list{display:flex; flex-direction:column; gap:12px}
.buy-modal-list{display:flex; flex-direction:column; gap:12px}
.download-item{background:rgba(255,255,255,.04); border:1px solid rgba(77,215,255,.10)}
.download-title{font-size:18px; font-weight:400; color:var(--c-text)}
.download-copy{min-width:0}
.download-meta{display:flex; flex-wrap:wrap; gap:8px; margin-top:10px}
.download-meta-pill{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  color:rgba(245,247,250,.84);
  font-size:14px;
  font-weight:300;
}
.download-action{display:flex; align-items:center}
.download-open-btn{white-space:nowrap}
.download-open-btn[disabled]{opacity:.55; cursor:not-allowed}
@media (max-width: 767px){
  .download-action{width:100%}
  .download-open-btn{width:100%}
}


/* Scroll-to-top button */
.to-top{
  position:fixed;
  right:18px;
  bottom:18px;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:rgba(66,67,68,.72);
  border:1px solid rgba(255,215,0,.28);
  color:var(--c-gold);
  box-shadow:0 12px 30px rgba(0,0,0,.35);
  z-index:1040;
  opacity:0;
  transform:translateY(10px);
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease, border-color .18s ease, background .18s ease;
}
.to-top.is-visible{
  opacity:1;
  transform:none;
  pointer-events:auto;
}
.to-top:hover{border-color:rgba(255,215,0,.55); background:rgba(66,67,68,.85); color:var(--c-gold)}
.to-top:active{transform:translateY(0) scale(.98)}
.to-top:focus-visible{outline:2px solid var(--c-gold); outline-offset:3px}

@media (max-width: 575px){
  .to-top{right:14px; bottom:14px}
}


/* ------------------------------------------------------------
   Produktseite (software.html)
------------------------------------------------------------ */

.product-breadcrumb{
  font-size:20px;
  color:rgba(245,247,250,.60);
}
.product-breadcrumb a{color:#1f2930;}
.product-breadcrumb .sep{opacity:.6; margin:0 6px}

.product-hero{
  width:100%;
  aspect-ratio:16/9;
  border-radius:18px;
  overflow:hidden;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(77,215,255,.10);
  box-shadow:0 10px 26px rgba(0,0,0,.28);
}
.product-hero img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  cursor:zoom-in;
}


.product-video{
  width:100%;
  aspect-ratio:16/9;
  border-radius:18px;
  overflow:hidden;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(77,215,255,.10);
  box-shadow:0 10px 26px rgba(0,0,0,.28);
}
.product-video iframe,
.product-video video{
  width:100%;
  height:100%;
  display:block;
}
.product-video video{background:#000}

.product-thumbs{display:flex; gap:10px; flex-wrap:wrap; margin-top:12px}
.product-thumb-btn{
  width:96px;
  aspect-ratio:16/9;
  border-radius:14px;
  overflow:hidden;
  border:1px solid var(--c-border);
  background:rgba(255,255,255,.04);
  padding:0;
}
.product-thumb-btn img{width:100%; height:100%; display:block; object-fit:cover}
.product-thumb-btn:hover{border-color:rgba(255,215,0,.35)}
.product-thumb-btn.is-active{border-color:rgba(255,215,0,.72); box-shadow:0 0 0 3px rgba(255,215,0,.12)}

.product-sticky{
  position:sticky;
  top:110px;
}
@media (max-width: 991px){
  .product-sticky{position:static; top:auto}
}

.product-meta .label{opacity:.7}
.product-meta .value{opacity:.95}

.product-badge{
  /*background:rgba(255,215,0,.18);*/
  background: rgba(255, 255, 255, .06);
  /*color:var(--c-gold);*/
  color: #212529;
  /*border:1px solid rgba(255,215,0,.35);*/
  font-size: 14px;
}

/* Lightbox (für Screenshot-Vergrößerung) */
.lightbox{
  position:fixed;
  inset:0;
  display:none;
  z-index:2000;
  padding:24px;
  background:rgba(0,0,0,.72);
}
.lightbox.open{display:flex; align-items:center; justify-content:center}
.lightbox-panel{
  width:min(1100px, 100%);
  max-height:min(88vh, 100%);
  overflow:auto;
  background:rgba(18,22,26,.96);
  border-radius:24px;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 30px 80px rgba(0,0,0,.60), 0 0 52px rgba(0,186,255,.10);
  position:relative;
  padding:18px;
}
.lightbox-img{
  width:100%;
  height:auto;
  display:block;
  border-radius:18px;
  background:rgba(255,255,255,.04);
}
.lightbox-close{
  position:absolute;
  top:12px;
  right:12px;
  border:1px solid rgba(255, 215, 0, .28);
  background:rgba(255,255,255,.06);
  color:var(--c-text);
  border-radius:12px;
  padding:8px 12px;
  font-weight:800;
}
.lightbox-close:hover{border-color:rgba(255, 215, 0, .55); color:var(--c-gold)}

/* Lightbox navigation (prev/next + counter) */
.lightbox-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:14px;
  border:1px solid rgba(255, 215, 0, .28);
  background:rgba(0,0,0,.28);
  color:var(--c-text);
  font-size:28px;
  line-height:1;
  font-weight:800;
  user-select:none;
}
.lightbox-nav:hover{border-color:rgba(255, 215, 0, .55); color:var(--c-gold)}
.lightbox-nav.prev{left:12px;}
.lightbox-nav.next{right:12px;}

.lightbox-counter{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  top:14px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(0,0,0,.28);
  font-size:13px;
  color:rgba(245,247,250,.82);
}

@media (max-width: 575px){
  .lightbox{padding:0px;background:rgba(0, 0, 0, .92);}
  .lightbox-panel{padding:0px;border-radius:0px;border:none;}
  .lightbox-nav{width:42px;height:42px;border-radius:14px;font-size:26px;}
  .lightbox-close{display:none;}
  .lightbox-img{border-radius:0px;}
  .lightbox-counter{display:none;}
}

/* Software cards as links (when used as <a>) */
.software-card{color:var(--c-text); text-decoration:none}
.software-card:hover{color:var(--c-text)}

/* Check statt Punkt bei <li> */
.check { list-style: none; padding-left: 1.2em; margin: 0; }
.check li { position: relative; }
.check li::before{
  content: "✓";
  position: absolute;
  left: -1.2em;
}
/* Punkte bei <li> */
.planned-bullets{
  list-style: disc;
  padding-left: 1.2em;
  margin: 0;
}
.planned-bullets li{
  margin: .25rem 0;
}
.planned-bullets li::before{
  content: none !important; /* falls irgendwo global Marker gesetzt werden */
}

/* Rechtstexte / Legal Pages */
.legal-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
  gap:12px;
}
.legal-link-card{
  display:block;
  text-decoration:none;
  color:inherit;
  padding:18px;
  border-radius:18px;
  border:1px solid rgba(77,215,255,.10);
  background:rgba(255,255,255,.04);
  transition:transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
  box-shadow:0 10px 26px rgba(0,0,0,.18);
}
.legal-link-card:hover{
  transform:translateY(-2px);
  border-color:rgba(255,215,0,.28);
  background:rgba(255,255,255,.06);
  color:inherit;
}
.legal-link-card.is-active{
  /*border-color:rgba(255,215,0,.34);*/
  border-color:rgba(255,215,0,.78);
  background:rgba(255,255,255,.07);
  box-shadow: 0 14px 34px rgba(0, 186, 255, .03);
}
.legal-link-card .h5{
  color:var(--c-text);
  font-weight:400;
}
.legal-link-kicker{
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  margin-bottom:8px;
}
.legal-doc h2,
.legal-doc .h4{
  color:var(--c-text);
  font-weight:400;
}
.legal-doc p,
.legal-doc li{
  color:var(--c-muted);
}
.legal-list{
  margin:0;
  padding-left:1.2rem;
}
.legal-list li + li{
  margin-top:10px;
}
.legal-stand{
  color:rgba(245,247,250,.60);
  font-size:14px;
  font-weight:300;
}
/* Footer */
.footer-legal-links{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:4px 8px;
}
.contact-channel-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.channel-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.04);
  color:rgba(245,247,250,.86);
  font-size:14px;
  font-weight:300;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.08);
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}
.channel-link:hover{
  color:var(--c-gold);
  border-color:rgba(255,215,0,.28);
  background:rgba(255,255,255,.06);
  transform:translateY(-1px);
}
.channel-icon{
  width:18px;
  height:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 18px;
}
.channel-icon svg{
  width:18px;
  height:18px;
  display:block;
}
.footer-channel-links{
  display:flex;
  flex-wrap:wrap;
  gap:6px 10px;
  margin-top:8px;
  font-size:14px;
  align-items:center;
}
.footer-channel-links a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:rgba(245,247,250,.72);
  text-decoration:none;
}
.footer-channel-links a:hover{
  color:var(--c-gold);
}
.footer-channel-icon{
  width:14px;
  height:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 14px;
}
.footer-channel-icon svg{
  width:14px;
  height:14px;
  display:block;
}
@media (max-width: 767px){
  .footer-legal-links{
    justify-content:flex-start;
  }
}

.headtext{
  font-size:40px;
  color: var(--c-gold);
}
@media (max-width: 440px){
  .headtext{
    font-size:24px;
  }
}

/* Promo-Leiste unter der Navbar (JSON-gesteuert, ohne Cookie) */
#promoBannerMount:empty{display:none}
.promo-bar-wrap{
  position:fixed;
  top:var(--nav-h);
  left:0;
  right:0;
  z-index:1025;
  transition:transform .22s ease, opacity .22s ease;
  opacity:1;
}
.promo-bar-wrap.is-hidden{transform:translateY(calc(-1 * var(--promo-h))); opacity:.02; pointer-events:none}
.promo-bar-wrap.is-empty{display:none}
.promo-strip{
  display:block;
  width:100%;
  /*min-height:var(--nav-h);*/
  height: 68px;
  background:linear-gradient(90deg, rgba(255,215,0,.18), rgba(21,92,143,.32) 42%, rgba(14,18,22,.92) 100%);
  /*border-top:1px solid rgba(255,215,0,.42);*/
  /*border-bottom:1px solid rgba(77,215,255,.20);*/
  box-shadow:0 12px 28px rgba(0,0,0,.28), 0 0 26px rgba(255,215,0,.70);
  color:var(--c-text);
  text-decoration:none;
  white-space:nowrap;
  overflow:hidden;
}
.promo-strip-inner{
  display:flex;
  align-items:center;
  gap:20px;
  min-height:var(--nav-h);
  padding-top:0;
  padding-bottom:0;
}
.promo-strip:hover{color:var(--c-text); box-shadow:0 14px 34px rgba(0,0,0,.34), 0 0 34px rgba(255,215,0,.16)}
.promo-strip-sale{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:88px;
  padding:10px 14px;
  /*background:linear-gradient(180deg, rgba(255,215,0,.96), rgba(255,190,0,.88)); GELB*/
  /*background: linear-gradient(180deg, #e60000, #e60000); ROT*/
  background: linear-gradient(180deg, #24b328, #24b328); /*GRÜN*/
  color:#161a1e;
  font-size:1rem;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.promo-strip-product{
  flex:1 1 auto;
  min-width:0;
  font-size:1.45rem;
  font-weight:600;
  letter-spacing:.01em;
  overflow:hidden;
  text-overflow:ellipsis;
}
.promo-strip-item{
  flex:0 0 auto;
  display:inline-flex;
  align-items:baseline;
  gap:8px;
  padding-left:16px;
  border-left:1px solid rgba(255,255,255,.14);
}
.promo-strip-label{
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(245,247,250,.72);
}
.promo-strip-item strong{
  font-size:1.4rem;
  font-weight:600;
  color:var(--c-gold);
}
.promo-strip-time strong{color:#ffffff}
@media (max-width: 991.98px){
  .promo-strip-inner{gap:12px}
  .promo-strip-sale{min-width:74px; padding:9px 12px; font-size:.92rem}
  .promo-strip-product{font-size:1.12rem}
  .promo-strip-item{gap:6px; padding-left:12px}
}
@media (max-width: 767px){
  .promo-strip-inner{min-height:var(--nav-h); gap:8px}
  .promo-strip-sale{min-width:60px; padding:7px 10px; font-size:.82rem}
  .promo-strip-product{font-size:.96rem}
  .promo-strip-item{padding-left:8px; gap:4px}
  .promo-strip-label{font-size:.62rem}
  .promo-strip-item strong{font-size:.8rem}
  .promo-strip-until{display:none}
}

/* Status / Kreise / Verfügbarkeit */
.stattext{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:14px;
  font-weight:300;
  line-height:1;
  font-style:italic;
  color:rgba(245,247,250,.88);
  padding:7px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(77,215,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  margin-top: 20px;
}
.status-dot{
  flex:0 0 auto;
  width:11px;
  height:11px;
  margin:0;
  display:block;
  overflow:visible;
}
.status-dot circle{
  fill:currentColor;
  stroke:rgba(255,255,255,.22);
  stroke-width:1.2;
}
/* Farbvarianten – passend zur Seite 
.status-green { color: #148514; }
.status-orange { color: #ff6c00; }
.status-red { color: #e10000; }
*/
.status-green{
  color:#49c774;
  filter:drop-shadow(0 0 6px rgba(73,199,116,.28));
}
.status-orange{
  color:#ffb347;
  filter:drop-shadow(0 0 6px rgba(255,179,71,.26));
}
.status-red{
  color:#ff6b6b;
  filter:drop-shadow(0 0 6px rgba(255,107,107,.24));
}

/* BFSG Tab */
.skip-link{
  position:fixed;
  left:16px;
  top:-64px;
  z-index:2000;
  padding:10px 14px;
  background:#111;
  color:#fff;
  border:1px solid rgba(255,215,0,.55);
  border-radius:10px;
  box-shadow:0 10px 28px rgba(0,0,0,.35);
  transition:top .18s ease;
}
.skip-link:focus,
.skip-link:focus-visible{
  top:14px;
  outline:2px solid var(--c-gold);
  outline-offset:2px;
}

/* Theme toggle */
.theme-toggle{
  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.5rem 0;
  margin:0;
  border:0;
  /*background:transparent;*/
  background: rgba(0, 0, 0, .2);
  border-radius:12px;
  color:inherit;
  font:inherit;
  font-weight:300;
  line-height:1.2;
  cursor:pointer;
}
.theme-toggle:hover{color:var(--c-gold)}
.theme-toggle:focus-visible{
  outline:2px solid var(--c-gold);
  outline-offset:3px;
  border-radius:10px;
}
.theme-toggle-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:2rem;
  height:2rem;
  line-height:1;
  flex:0 0 auto;
}
.theme-toggle-icon svg{
  display:block;
  width:100%;
  height:100%;
  stroke:#5b5b5b;
  /*fill:none;*/
  /*stroke-width:1.9;*/
  stroke-linecap:round;
  stroke-linejoin:round;
}
.theme-toggle-label{
  letter-spacing:.02em;
}
@media (max-width: 991.98px){
  .theme-toggle{
    width:100%;
    justify-content:flex-start;
  }
}

/* Light mode */

html[data-theme="light"]{
  color-scheme:light;
  --c-bg:#f4f7fb;
  --c-bg-2:#e9f0f7;
  --c-text:#152738;
  --c-muted:rgba(21,39,56,.76);
  --c-border:rgba(21,92,143,.16);
  --c-card:rgba(255,255,255,.8);
  --c-gold:#9d7200;
  --c-blue:#155C8F;
  --c-cyan:#2aaad4;
  --c-cyan-2:#178fbf;
  --c-border-blue:rgba(21,92,143,.14);
  --shadow:0 16px 40px rgba(17,47,79,.12);
  --c-pill-solid:#16324b;
}
html[data-theme="light"] body{
  color:var(--c-text);
  /*background:
    radial-gradient(1100px 640px at 50% 0%, rgba(0,186,255,.10), transparent 60%),
    radial-gradient(1200px 680px at 15% 10%, rgba(21,92,143,.12), transparent 58%),
    radial-gradient(900px 520px at 85% 18%, rgba(255,215,0,.10), transparent 52%),
    linear-gradient(180deg, #f7fbff, #eaf1f8 54%, #e4edf6);*/
}
html[data-theme="light"] body::before{
  opacity:.12;
  mix-blend-mode:normal;
  background:
    linear-gradient(transparent 0 0),
    repeating-linear-gradient(90deg, rgba(21,92,143,.06) 0 1px, transparent 1px 72px),
    repeating-linear-gradient(0deg, rgba(21,92,143,.05) 0 1px, transparent 1px 72px);
}
html[data-theme="light"] ::selection{background:rgba(21,92,143,.18); color:var(--c-text);}
html[data-theme="light"] a{color:#7e5b00;}
html[data-theme="light"] a:hover{color:#5d4300;}
html[data-theme="light"] .navbar-dertob{
  background:rgba(255,255,255,.82);
  border-bottom:1px solid rgba(21,92,143,.12);
  box-shadow:0 10px 30px rgba(17,47,79,.08);
}
html[data-theme="light"] .navbar-dertob .navbar-brand,
html[data-theme="light"] .navbar-dertob .brand-sub,
html[data-theme="light"] .navbar-dertob .nav-link,
html[data-theme="light"] .navbar-dertob .nav-link:hover,
html[data-theme="light"] .navbar-dertob .nav-link.active{
  color:var(--c-text);
}
html[data-theme="light"] .navbar-dertob .nav-link.active,
html[data-theme="light"] .navbar-dertob .nav-link:hover{
  color:var(--c-gold);
}
html[data-theme="light"] .navbar-dertob .navbar-toggler{
  border-color:rgba(21,92,143,.18);
  background:rgba(255,255,255,.72);
}
html[data-theme="light"] .navbar-dertob .navbar-toggler-icon{
  background-image:url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27rgba%2821,39,56,0.9%29%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%272%27 d=%27M4 7h22M4 15h22M4 23h22%27/%3e%3c/svg%3e");
}
html[data-theme="light"] .theme-toggle{
  background:rgba(255,255,255,.82);
  border-color:rgba(21,92,143,.16);
  color:var(--c-text);
  box-shadow:0 10px 24px rgba(17,47,79,.08);
}
html[data-theme="light"] .theme-toggle:hover{
  background:rgba(255,255,255,.96);
  border-color:rgba(157,114,0,.36);
}
html[data-theme="light"] .theme-toggle-icon{
  /*background:rgba(157,114,0,.12);*/
  color:var(--c-gold);
}
html[data-theme="light"] .hero::before{
  background:
    linear-gradient(90deg, rgba(255,255,255,.92), rgba(255,255,255,.18)),
    url("../images/coding-bg.jpg") center/cover no-repeat;
  opacity:1;
}
html[data-theme="light"] .hero::after{
  background:linear-gradient(180deg, rgba(21,92,143,.82), rgba(42,170,212,.16));
  box-shadow:-8px 0 28px rgba(21,92,143,.12);
}
html[data-theme="light"] .hero h1,
html[data-theme="light"] .hero p,
html[data-theme="light"] .small-muted,
html[data-theme="light"] .legal-doc p,
html[data-theme="light"] .legal-doc li,
html[data-theme="light"] .legal-stand,
html[data-theme="light"] .product-breadcrumb,
html[data-theme="light"] .stattext,
html[data-theme="light"] .promo-strip-label,
html[data-theme="light"] .lightbox-counter,
html[data-theme="light"] .download-modal-note,
html[data-theme="light"] .download-empty-state,
html[data-theme="light"] .download-meta-pill,
html[data-theme="light"] .filter-chip,
html[data-theme="light"] .hl-chip,
html[data-theme="light"] .kicker,
html[data-theme="light"] .btn-ghost,
html[data-theme="light"] .software-card .badgeCard{
  color:var(--c-text);
}
html[data-theme="light"] .headtext,
html[data-theme="light"] .section-card-title-gold,
html[data-theme="light"] .filter-chip.is-active,
html[data-theme="light"] .promo-strip-item strong,
html[data-theme="light"] .promo-strip-time strong,
html[data-theme="light"] .product-breadcrumb a,
html[data-theme="light"] .to-top,
html[data-theme="light"] .btn-gold:hover,
html[data-theme="light"] .btn-gold,
html[data-theme="light"] .skip-link:focus,
html[data-theme="light"] .skip-link:focus-visible{
  color:var(--c-gold);
}
html[data-theme="light"] .card-glass,
html[data-theme="light"] .hero-card,
html[data-theme="light"] .kicker,
html[data-theme="light"] .software-thumb,
html[data-theme="light"] .software-modal-hero,
html[data-theme="light"] .software-thumb-btn,
html[data-theme="light"] .product-hero,
html[data-theme="light"] .product-video,
html[data-theme="light"] .product-thumb-btn,
html[data-theme="light"] .legal-link-card,
html[data-theme="light"] .download-item,
html[data-theme="light"] .download-modal-note,
html[data-theme="light"] .download-empty-state,
html[data-theme="light"] .download-meta-pill,
html[data-theme="light"] .filter-chip,
html[data-theme="light"] .hl-chip,
html[data-theme="light"] .stattext,
html[data-theme="light"] .form-control,
html[data-theme="light"] .form-select,
html[data-theme="light"] footer,
html[data-theme="light"] .promo-strip,
html[data-theme="light"] .modal-dertob .modal-panel,
html[data-theme="light"] .lightbox-panel,
html[data-theme="light"] .to-top{
  background:rgba(255,255,255,.82);
  border-color:rgba(21,92,143,.12);
  box-shadow:0 14px 34px rgba(17,47,79,.10);
  color:var(--c-text);
}
html[data-theme="light"] .modal-dertob .modal-panel{
  background:rgba(255,255,255,.98);
}
html[data-theme="light"] .card-glass:hover,
html[data-theme="light"] .legal-link-card:hover,
html[data-theme="light"] .download-item:hover,
html[data-theme="light"] .filter-chip:hover,
html[data-theme="light"] .hl-chip:hover,
html[data-theme="light"] .software-card:hover{
  background:rgba(255,255,255,.94);
  border-color:rgba(157,114,0,.28);
  box-shadow:0 18px 40px rgba(17,47,79,.12);
}
html[data-theme="light"] .service-icon,
html[data-theme="light"] .logo{
  filter:drop-shadow(0 0 10px rgba(21,92,143,.12));
}
html[data-theme="light"] .service-icon{
  border-color:rgba(21,92,143,.2);
  box-shadow:0 10px 24px rgba(17,47,79,.08), 0 0 18px rgba(42,170,212,.10);
}
html[data-theme="light"] .service-icon span{
  background:#1f4f76;
  box-shadow:0 0 0 6px rgba(21,92,143,.08);
}
html[data-theme="light"] .btn-blue{
  background:linear-gradient(180deg, rgba(42,170,212,.18), rgba(21,92,143,.14));
  border-color:rgba(21,92,143,.18);
  color:#163a59;
  box-shadow:0 12px 28px rgba(21,92,143,.10);
}
html[data-theme="light"] .btn-blue:hover{
  border-color:rgba(21,92,143,.34);
  color:#122b42;
}
html[data-theme="light"] .btn-ghost{
  background:rgba(255,255,255,.78);
  border-color:rgba(21,92,143,.14);
}
html[data-theme="light"] .btn-ghost:hover{
  border-color:rgba(157,114,0,.32);
}
html[data-theme="light"] .btn-gold{
  background:#f0cf70;
  border-color:#d7b34d;
  color:#3f2c00;
}
html[data-theme="light"] .btn-gold:hover{
  background:#f4d982;
  border-color:#d7b34d;
}
html[data-theme="light"] .hr-soft{
  background:linear-gradient(90deg, transparent, rgba(21,92,143,.16), transparent);
}
html[data-theme="light"] .product-badge,
html[data-theme="light"] .software-card .badgeCard,
html[data-theme="light"] .pill{
  background:rgba(21,92,143,.08);
  border-color:rgba(21,92,143,.14);
}
html[data-theme="light"] .pill{
  color:#16324b;
}
html[data-theme="light"] .hl-chip .ico{
  background:#23435f;
}
html[data-theme="light"] .form-control::placeholder{
  color:rgba(21,39,56,.48);
}
html[data-theme="light"] footer{
  border-top:1px solid rgba(21,92,143,.10);
}
html[data-theme="light"] .modal-dertob,
html[data-theme="light"] .lightbox{
  background:rgba(20,38,55,.14);
}
html[data-theme="light"] .modal-dertob .modal-header,
html[data-theme="light"] .lightbox-counter{
  border-color:rgba(21,92,143,.10);
}
html[data-theme="light"] .modal-dertob .modal-close,
html[data-theme="light"] .lightbox-close,
html[data-theme="light"] .lightbox-nav{
  background:rgba(255,255,255,.92);
  border-color:rgba(21,92,143,.14);
  color:var(--c-text);
}
html[data-theme="light"] .modal-dertob .modal-close:hover,
html[data-theme="light"] .lightbox-close:hover,
html[data-theme="light"] .lightbox-nav:hover{
  border-color:rgba(157,114,0,.34);
  color:var(--c-gold);
}
html[data-theme="light"] .lightbox-counter{
  background:rgba(255,255,255,.9);
}
html[data-theme="light"] .product-video video,
html[data-theme="light"] .lightbox-img{
  background:#eef4fa;
}
html[data-theme="light"] .promo-strip{
  background:linear-gradient(90deg, rgba(240,207,112,.34), rgba(42,170,212,.18) 42%, rgba(255,255,255,.95) 100%);
  box-shadow:0 12px 26px rgba(17,47,79,.10);
}
html[data-theme="light"] .promo-strip:hover{
  box-shadow:0 14px 32px rgba(17,47,79,.14);
}
html[data-theme="light"] .promo-strip-item{
  border-left-color:rgba(21,92,143,.12);
}
html[data-theme="light"] .promo-strip-sale{
  color:#16324b;
}
html[data-theme="light"] .stattext{
  background:rgba(255,255,255,.76);
}
html[data-theme="light"] .status-dot circle{
  stroke:rgba(21,92,143,.22);
}
html[data-theme="light"] .skip-link{
  background:#ffffff;
  color:var(--c-text);
  border-color:rgba(21,92,143,.18);
  box-shadow:0 12px 26px rgba(17,47,79,.10);
}
html[data-theme="light"] .to-top{
  background:rgba(255,255,255,.92);
  border-color:rgba(157,114,0,.24);
}
html[data-theme="light"] .to-top:hover{
  background:#ffffff;
  border-color:rgba(157,114,0,.4);
}
html[data-theme="light"] .fc1,
html[data-theme="light"] .section-card-title-muted,
html[data-theme="light"] .text-muted-theme,
html[data-theme="light"] .card-muted-copy,
html[data-theme="light"] .link-label-soft,
html[data-theme="light"] .download-meta .small-muted,
html[data-theme="light"] .small-muted,
html[data-theme="light"] .legal-doc .small-muted,
html[data-theme="light"] .legal-link-card p,
html[data-theme="light"] .legal-doc p,
html[data-theme="light"] .legal-doc li,
html[data-theme="light"] .product-meta,
html[data-theme="light"] .product-shortcopy{
  color:var(--c-muted);
}
