/* ════════════════════════════════════════════════════════════════
 * DWAY · dev+environment by EWAY
 * Stylesheet – dunkles Dev-Theme, Sidebar-Layout
 * ════════════════════════════════════════════════════════════════ */

/* ─── Reset ──────────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
    font-family: 'Inter', ui-sans-serif, system-ui, -apple-system, sans-serif;
    background: var(--dway-dark);
    color: #e5edf5;
    min-height: 100vh;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
    line-height: 1.6;
}
img, svg, video { max-width: 100%; height: auto; display: block; }
a { color: var(--dway-blue); text-decoration: none; transition: color .15s; }
a:hover { color: #4cc4ff; }
button { font: inherit; }

/* ─── Tokens ─────────────────────────────────────────────────── */
:root {
    --dway-blue:    #009fe3;
    --dway-blue-d:  #007fc0;
    --dway-green:   #00d084;
    --dway-orange:  #ffa845;
    --dway-red:     #ff5b5b;
    --dway-dark:    #0a0f1e;
    --dway-dark2:   #0f1829;
    --dway-dark3:   #131e36;
    --dway-line:    rgba(255,255,255,.08);
    --dway-text:    #e5edf5;
    --dway-muted:   rgba(229,237,245,.6);
    --dway-dim:     rgba(229,237,245,.35);
    --eway-blue:    #0177AD;

    --dway-radius:    .875rem;
    --dway-radius-sm: .5rem;
    --dway-sidebar-w: 280px;
    --dway-topbar-h:  60px;
    --mono: 'Cascadia Code','JetBrains Mono','Fira Code','Courier New',monospace;
}

/* ─── A11y helpers ───────────────────────────────────────────── */
.dway-visually-hidden {
    position:absolute!important; width:1px; height:1px; overflow:hidden;
    clip:rect(0 0 0 0); white-space:nowrap; border:0; padding:0; margin:-1px;
}
.skip-link {
    position: absolute; left: -9999px; top: 1rem; z-index: 9999;
    background: var(--dway-blue); color:#fff; padding:.5rem 1rem;
    border-radius: var(--dway-radius-sm); font-weight: 600; font-size: .875rem;
}
.skip-link:focus { left: 1rem; }

/* ─── Background atmosphere ──────────────────────────────────── */
.dway-bg-grid {
    position: fixed; inset: 0; z-index: 0; pointer-events: none;
    background-image:
        linear-gradient(rgba(0,159,227,.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0,159,227,.04) 1px, transparent 1px);
    background-size: 48px 48px;
}
.dway-bg-grid::after {
    content:''; position: absolute; inset: 0;
    background: radial-gradient(ellipse 70% 60% at 50% 20%, rgba(0,159,227,.07) 0%, transparent 70%);
}
.dway-orb {
    position: fixed; border-radius: 50%; filter: blur(80px);
    pointer-events: none; z-index: 0;
    animation: dway-float 8s ease-in-out infinite;
}
.dway-orb--1 { width:500px; height:500px; background: rgba(0,159,227,.10); top:-150px; left:-100px; }
.dway-orb--2 { width:400px; height:400px; background: rgba(0,208,132,.07); bottom:-100px; right:-80px; animation-delay:-3s; }
@keyframes dway-float {
    0%,100%{ transform: translateY(0) scale(1); }
    50%   { transform: translateY(-30px) scale(1.05); }
}
.dway-scan {
    position: fixed; top:0; left:0; right:0; height:2px; z-index:10;
    background: linear-gradient(90deg, transparent 0%, var(--dway-blue) 50%, transparent 100%);
    animation: dway-scan 4s ease-in-out infinite; opacity:.5;
}
@keyframes dway-scan { 0%{transform:translateX(-100%)} 100%{transform:translateX(100%)} }
@media (prefers-reduced-motion: reduce) {
    .dway-orb, .dway-scan { animation: none; }
}

/* ─── Layout ─────────────────────────────────────────────────── */
.dway-main {
    margin-left: var(--dway-sidebar-w);
    min-height: 100vh;
    position: relative; z-index: 1;
    display: flex; flex-direction: column;
}
.dway-container {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 1.5rem;
}
.dway-container--narrow { max-width: 760px; }

/* ─── Topbar (mobile) ────────────────────────────────────────── */
.dway-topbar {
    display: none;
    position: fixed; top:0; left:0; right:0;
    height: var(--dway-topbar-h);
    background: linear-gradient(90deg, #0b1730 0%, #111827 100%);
    border-bottom: 1px solid var(--dway-line);
    z-index: 90;
    align-items: center; justify-content: space-between;
    padding: 0 1rem;
    box-shadow: 0 4px 24px rgba(0,0,0,.5);
}
.dway-topbar__brand {
    display:flex; align-items:center; gap:.6rem;
    color:#fff; font-weight: 800; letter-spacing: .02em;
}
.dway-topbar__mark {
    width:32px; height:32px; border-radius:8px;
    background: var(--dway-blue);
    color:#0a0f1e; font-weight:900;
    display:flex; align-items:center; justify-content:center;
}
.dway-burger {
    background: rgba(255,255,255,.06); color:#fff; border:none;
    width: 40px; height: 40px; border-radius: 8px;
    display:flex; align-items:center; justify-content:center; cursor:pointer;
}
.dway-burger:hover { background: rgba(255,255,255,.12); }

.dway-overlay {
    display: none; position: fixed; inset:0;
    background: rgba(10,15,35,.65); backdrop-filter: blur(3px);
    z-index: 95; opacity: 0;
    transition: opacity .25s ease;
}

/* ─── Sidebar ────────────────────────────────────────────────── */
.dway-sidebar {
    width: var(--dway-sidebar-w);
    position: fixed; top:0; left:0; height:100vh;
    background: linear-gradient(180deg, #0b1124 0%, #0d1428 50%, #0a0f1e 100%);
    border-right: 1px solid var(--dway-line);
    display: flex; flex-direction: column;
    overflow-y: auto; overflow-x: hidden;
    z-index: 100;
    box-shadow: 6px 0 24px rgba(0,0,0,.5);
    transition: transform .28s cubic-bezier(.4,0,.2,1);
}
.dway-sidebar::before {
    content:''; position: absolute; top:0; left:0; right:0; height:3px;
    background: linear-gradient(90deg, var(--dway-blue) 0%, var(--dway-green) 100%);
    z-index: 1;
}

.dway-sidebar__brand {
    padding: 1.5rem 1.25rem 1rem;
    border-bottom: 1px solid var(--dway-line);
    text-align: center;
}
.dway-logo { width: 180px; height: auto; margin: 0 auto; }
.dway-sidebar__status {
    display:inline-flex; align-items:center; gap:.4rem;
    margin-top: .75rem;
    font-size: .7rem; color: var(--dway-green);
    letter-spacing: .08em; text-transform: uppercase; font-weight: 700;
    padding: .25rem .75rem; border-radius: 2rem;
    background: rgba(0,208,132,.08);
    border: 1px solid rgba(0,208,132,.3);
}
.dway-status-dot {
    width: 7px; height: 7px; border-radius: 50%;
    background: var(--dway-green);
    animation: dway-pulse 2s ease-in-out infinite;
}
.dway-status-dot--green  { background: var(--dway-green); }
.dway-status-dot--orange { background: var(--dway-orange); }
.dway-status-dot--red    { background: var(--dway-red);    }
@keyframes dway-pulse {
    0%,100%{ opacity: 1; transform: scale(1); }
    50%   { opacity: .55; transform: scale(.7); }
}
@media (prefers-reduced-motion: reduce) { .dway-status-dot { animation: none; } }

/* Sidebar Search */
.dway-sidebar__search {
    margin: 1rem 1.25rem;
    position: relative;
}
.dway-sidebar__search input {
    width: 100%; padding: .55rem .65rem .55rem 2.1rem;
    background: rgba(255,255,255,.04);
    border: 1px solid var(--dway-line);
    color: #fff; font-size: .85rem;
    border-radius: var(--dway-radius-sm);
    transition: border-color .15s, background .15s;
}
.dway-sidebar__search input:focus {
    outline: none;
    border-color: var(--dway-blue);
    background: rgba(0,159,227,.06);
}
.dway-search-icon {
    position: absolute; left: .65rem; top: 50%; transform: translateY(-50%);
    color: var(--dway-dim); pointer-events: none;
}

.dway-sidebar__nav { padding: .25rem 0; flex: 1; }
.dway-nav-heading {
    margin: 1.25rem 1.5rem .35rem;
    font-size: .65rem; letter-spacing: .12em; text-transform: uppercase;
    color: var(--dway-dim); font-weight: 700;
}
.dway-sidebar__nav ul { list-style: none; }
.dway-nav-item {
    display: flex; align-items: center; gap: .75rem;
    margin: .1rem .75rem;
    padding: .65rem 1rem;
    color: rgba(255,255,255,.78);
    border-radius: var(--dway-radius-sm);
    font-size: .85rem; font-weight: 500;
    transition: background .15s, color .15s;
}
.dway-nav-item:hover { background: rgba(255,255,255,.06); color:#fff; }
.dway-nav-item.is-active {
    background: linear-gradient(90deg, rgba(0,159,227,.18), rgba(0,159,227,.05));
    color: #fff; font-weight: 600;
    border-left: 2px solid var(--dway-blue);
    padding-left: calc(1rem - 2px);
}
.dway-nav-item__icon { width: 16px; height: 16px; flex-shrink: 0; opacity: .85; }
.dway-nav-item__icon svg { width: 100%; height: 100%; }
.dway-nav-item__ext { margin-left: auto; font-size: .7rem; color: var(--dway-dim); }

/* Sidebar contact */
.dway-sidebar__contact {
    padding: .9rem 1.25rem 1.25rem;
    border-top: 1px solid var(--dway-line);
}
.dway-sidebar__link {
    display: block; font-size: .78rem; color: var(--dway-muted);
    margin-bottom: .35rem; padding: .25rem 0;
}
.dway-sidebar__link:hover { color: #fff; }
.dway-sidebar__cta {
    display: block; margin-top: .5rem;
    padding: .55rem .75rem;
    background: rgba(1,119,173,.14);
    border: 1px solid rgba(1,119,173,.4);
    color: #67c2eb; font-weight: 600; font-size: .78rem;
    border-radius: var(--dway-radius-sm); text-align: center;
    transition: background .15s, color .15s;
}
.dway-sidebar__cta:hover { background: var(--eway-blue); color: #fff; }

/* ─── Hero ───────────────────────────────────────────────────── */
.dway-hero {
    padding: 4.5rem 0 2.5rem;
    text-align: center;
    position: relative;
}
.dway-hero--compact { padding: 3rem 0 1.5rem; text-align: left; }
.dway-hero--compact h1 { font-size: clamp(1.8rem, 4vw, 2.5rem); }
.dway-hero--compact .dway-hero__desc { margin: 0 0 1.5rem; }

.dway-badge {
    display: inline-flex; align-items: center; gap: .5rem;
    padding: .35rem 1rem;
    border-radius: 2rem;
    border: 1px solid rgba(0,208,132,.35);
    background: rgba(0,208,132,.1);
    color: var(--dway-green);
    font-size: .72rem; font-weight: 700;
    letter-spacing: .08em; text-transform: uppercase;
    margin-bottom: 1.5rem;
}
.dway-hero__title {
    font-size: clamp(2rem, 5vw, 3.5rem);
    font-weight: 900; letter-spacing: -.03em; line-height: 1.1;
    margin: 0 0 1.5rem; color:#fff;
}
.dway-hero h1 {
    font-size: clamp(2rem, 5vw, 3rem);
    font-weight: 900; letter-spacing: -.03em; line-height: 1.15;
    margin: 0 0 1rem; color:#fff;
}
.dway-accent { color: var(--dway-blue); }
.dway-hero__desc {
    max-width: 640px; margin: 0 auto 2rem;
    color: var(--dway-muted); font-size: 1rem; line-height: 1.7;
}
.dway-hero--compact .dway-hero__desc { max-width: 720px; margin: 0 0 1.5rem; }

.dway-code {
    display: inline-block;
    font-family: var(--mono); font-size: .9rem;
    color: var(--dway-green);
    background: rgba(0,208,132,.07);
    border: 1px solid rgba(0,208,132,.2);
    border-radius: var(--dway-radius-sm);
    padding: .65rem 1.25rem;
    margin-bottom: 1.75rem;
    letter-spacing: .02em;
}
.dway-code__cmt { color: rgba(255,255,255,.3); }
.dway-code__key { color: var(--dway-blue); }
.dway-code__str { color: #f0c27f; }

/* Hero Search */
.dway-hero__search {
    display: flex; align-items: center; gap: .5rem;
    max-width: 720px; margin: 0 auto 1.5rem;
    background: rgba(255,255,255,.04);
    border: 1px solid var(--dway-line);
    border-radius: var(--dway-radius);
    padding: .35rem .35rem .35rem 1rem;
    position: relative;
    transition: border-color .15s, background .15s;
}
.dway-hero--compact .dway-hero__search { margin: 0 0 1.25rem; }
.dway-hero__search:focus-within {
    border-color: var(--dway-blue);
    background: rgba(0,159,227,.05);
}
.dway-hero__search-icon { color: var(--dway-dim); flex-shrink: 0; }
.dway-hero__search input {
    flex: 1; background: transparent; border: none; outline: none;
    color: #fff; font-size: 1rem;
    padding: .85rem .5rem;
    min-width: 0;
}
.dway-hero__search input::placeholder { color: var(--dway-dim); }

.dway-hero__actions {
    display: flex; flex-wrap: wrap; gap: .75rem;
    justify-content: center;
}
.dway-hero--compact .dway-hero__actions { justify-content: flex-start; }

/* ─── Buttons ────────────────────────────────────────────────── */
.dway-btn {
    display: inline-flex; align-items: center; gap: .5rem;
    padding: .7rem 1.5rem;
    font-size: .9rem; font-weight: 700;
    border-radius: var(--dway-radius-sm);
    text-decoration: none; cursor: pointer;
    border: 1px solid transparent;
    transition: background .15s, border-color .15s, transform .15s, box-shadow .15s;
    white-space: nowrap;
}
.dway-btn:hover { transform: translateY(-1px); }
.dway-btn--lg { padding: .9rem 2rem; font-size: 1rem; }

.dway-btn--primary {
    background: var(--dway-blue); color: #fff;
    box-shadow: 0 4px 18px rgba(0,159,227,.25);
}
.dway-btn--primary:hover { background: var(--dway-blue-d); color:#fff; box-shadow: 0 6px 24px rgba(0,159,227,.4); }

.dway-btn--ghost {
    background: transparent;
    border-color: rgba(255,255,255,.15);
    color: var(--dway-muted);
}
.dway-btn--ghost:hover { color:#fff; border-color: var(--dway-blue); background: rgba(0,159,227,.08); }

.dway-btn--eway {
    background: var(--eway-blue); color: #fff;
    box-shadow: 0 4px 18px rgba(1,119,173,.3);
}
.dway-btn--eway:hover { background: #015a87; color:#fff; }

/* ─── Sections ───────────────────────────────────────────────── */
.dway-section {
    padding: 4rem 0;
    position: relative;
}
.dway-section--alt { background: rgba(0,0,0,.18); }
.dway-section__head {
    text-align: center;
    max-width: 640px; margin: 0 auto 2.5rem;
}
.dway-section__head h2 {
    font-size: clamp(1.6rem, 3vw, 2.25rem);
    font-weight: 800; letter-spacing: -.02em;
    color: #fff; margin: .5rem 0 .75rem;
}
.dway-section__head p { color: var(--dway-muted); }
.dway-section__cta { text-align: center; margin-top: 2rem; }

.dway-eyebrow {
    display: inline-block;
    font-size: .7rem; font-weight: 700;
    color: var(--dway-blue);
    letter-spacing: .14em; text-transform: uppercase;
    background: rgba(0,159,227,.1);
    padding: .25rem .75rem; border-radius: 2rem;
    border: 1px solid rgba(0,159,227,.2);
}
.dway-eyebrow--light {
    color: var(--dway-text);
    background: rgba(255,255,255,.06);
    border-color: rgba(255,255,255,.12);
}

/* ─── Grid / Cards ───────────────────────────────────────────── */
.dway-grid {
    display: grid; gap: 1.25rem;
    grid-template-columns: 1fr;
}
.dway-grid--2 { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.dway-grid--3 { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.dway-grid--4 { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }

.dway-card {
    background: linear-gradient(180deg, var(--dway-dark2), var(--dway-dark));
    border: 1px solid var(--dway-line);
    border-radius: var(--dway-radius);
    padding: 1.5rem;
    display: flex; flex-direction: column; gap: .75rem;
    transition: border-color .2s, transform .2s, box-shadow .2s;
}
.dway-card h2, .dway-card h3 {
    color: #fff; font-weight: 700; letter-spacing: -.01em;
    font-size: 1.05rem;
}
.dway-card p { color: var(--dway-muted); font-size: .88rem; line-height: 1.65; }
.dway-card--linked { color: inherit; }
.dway-card--linked:hover {
    transform: translateY(-3px);
    border-color: rgba(0,159,227,.45);
    box-shadow: 0 12px 32px rgba(0,159,227,.18);
    color: inherit;
}
.dway-card--accent {
    background: linear-gradient(135deg, rgba(1,119,173,.18), rgba(1,119,173,.05));
    border-color: rgba(1,119,173,.35);
}

.dway-card__icon {
    width: 44px; height: 44px;
    border-radius: var(--dway-radius-sm);
    background: rgba(0,159,227,.12);
    color: var(--dway-blue);
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
}
.dway-card__icon svg { width: 22px; height: 22px; }
.dway-card__more {
    margin-top: auto;
    color: var(--dway-blue); font-weight: 600; font-size: .82rem;
}

/* Doc lists in cards */
.dway-card--doc h2 { margin-bottom: .25rem; font-size: 1.1rem; }
.dway-doc-list { list-style: none; }
.dway-doc-list li { border-top: 1px solid var(--dway-line); }
.dway-doc-list li:first-child { border-top: none; }
.dway-doc-list a {
    display: flex; flex-direction: column; gap: .15rem;
    padding: .65rem 0;
    color: var(--dway-text);
}
.dway-doc-list a strong { font-weight: 600; font-size: .88rem; }
.dway-doc-list a span { font-size: .78rem; color: var(--dway-muted); }
.dway-doc-list a:hover strong { color: var(--dway-blue); }

/* ─── FAQ ────────────────────────────────────────────────────── */
.dway-faq-filters {
    display: flex; flex-wrap: wrap; gap: .5rem;
    margin: 1rem 0 .75rem;
}
.dway-pill {
    display: inline-flex; align-items: center; gap: .35rem;
    padding: .35rem .9rem;
    background: rgba(255,255,255,.04);
    border: 1px solid var(--dway-line);
    color: var(--dway-muted);
    font-size: .8rem; font-weight: 600;
    border-radius: 2rem; cursor: pointer;
    transition: background .15s, color .15s, border-color .15s;
}
.dway-pill span {
    background: rgba(255,255,255,.08);
    padding: .05rem .45rem; border-radius: 1rem;
    font-size: .7rem; color: var(--dway-dim);
}
.dway-pill:hover { color: #fff; border-color: rgba(0,159,227,.4); }
.dway-pill.is-active {
    background: rgba(0,159,227,.15);
    border-color: var(--dway-blue);
    color: #fff;
}
.dway-pill.is-active span { background: var(--dway-blue); color:#fff; }
/* Roadmap state pills */
.dway-pill--released, .dway-pill--completed { color: var(--dway-green); border-color: rgba(0,208,132,.4); background: rgba(0,208,132,.08); }
.dway-pill--in-progress, .dway-pill--investigating { color: var(--dway-orange); border-color: rgba(255,168,69,.4); background: rgba(255,168,69,.08); }
.dway-pill--planned { color: var(--dway-blue); border-color: rgba(0,159,227,.4); background: rgba(0,159,227,.08); }
.dway-pill--idea { color: var(--dway-muted); }

.dway-faq-count {
    font-size: .85rem; color: var(--dway-muted);
    margin: .25rem 0 0;
}

.dway-faq-list { display: flex; flex-direction: column; gap: .65rem; }
.dway-faq {
    background: var(--dway-dark2);
    border: 1px solid var(--dway-line);
    border-radius: var(--dway-radius-sm);
    overflow: hidden;
    transition: border-color .15s;
}
.dway-faq:hover { border-color: rgba(0,159,227,.3); }
.dway-faq[open] { border-color: rgba(0,159,227,.45); }
.dway-faq summary {
    list-style: none;
    padding: 1rem 1.25rem;
    display: flex; align-items: center; gap: 1rem;
    cursor: pointer;
    font-size: .95rem;
}
.dway-faq summary::-webkit-details-marker { display: none; }
.dway-faq__cat {
    flex-shrink: 0;
    font-size: .68rem; font-weight: 700;
    color: var(--dway-blue);
    letter-spacing: .06em; text-transform: uppercase;
    padding: .2rem .6rem;
    background: rgba(0,159,227,.1);
    border-radius: 2rem;
}
.dway-faq__q { flex: 1; color: #fff; font-weight: 600; }
.dway-faq__chevron {
    flex-shrink: 0;
    width: 24px; height: 24px;
    display: flex; align-items: center; justify-content: center;
    background: rgba(0,159,227,.1);
    border-radius: 50%;
    color: var(--dway-blue);
    font-weight: 800; font-size: 1.1rem; line-height: 1;
    transition: transform .15s;
}
.dway-faq[open] .dway-faq__chevron {
    transform: rotate(45deg);
}
.dway-faq__a {
    padding: 0 1.25rem 1.25rem 1.25rem;
    color: var(--dway-muted); font-size: .9rem; line-height: 1.7;
    border-top: 1px solid var(--dway-line);
    margin-top: -.25rem; padding-top: .9rem;
}
.dway-faq__a p + p { margin-top: .75rem; }
.dway-faq__a ul, .dway-faq__a ol { margin: .5rem 0 .5rem 1.25rem; }
.dway-faq__a li { margin: .25rem 0; }
.dway-faq__a code {
    font-family: var(--mono);
    background: rgba(0,159,227,.1);
    padding: .1rem .35rem; border-radius: .25rem;
    color: var(--dway-blue); font-size: .85em;
}
.dway-faq__a a { color: var(--dway-blue); text-decoration: underline; text-underline-offset: 2px; }
.dway-faq.is-hidden { display: none; }
.dway-faq mark {
    background: rgba(0,208,132,.25); color: #fff;
    padding: 0 .15rem; border-radius: 2px;
}

.dway-faq-empty {
    text-align: center;
    padding: 3rem 1rem;
    color: var(--dway-muted);
}
.dway-faq-empty p { margin-bottom: 1rem; }

/* ─── Breadcrumb ─────────────────────────────────────────────── */
.dway-breadcrumb {
    display: flex; align-items: center; gap: .5rem;
    font-size: .8rem; color: var(--dway-muted);
    margin-bottom: 1rem;
}
.dway-breadcrumb a { color: var(--dway-muted); }
.dway-breadcrumb a:hover { color: var(--dway-blue); }
.dway-breadcrumb span { color: var(--dway-dim); }

/* ─── Stack list ─────────────────────────────────────────────── */
.dway-stack {
    display: grid; gap: .75rem;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    list-style: none;
}
.dway-stack li {
    background: var(--dway-dark2);
    border: 1px solid var(--dway-line);
    border-radius: var(--dway-radius-sm);
    padding: .85rem 1rem;
    display: flex; flex-direction: column; gap: .15rem;
}
.dway-stack strong { color: #fff; font-size: .9rem; }
.dway-stack span { color: var(--dway-dim); font-size: .78rem; }

/* ─── CTA Band ───────────────────────────────────────────────── */
.dway-cta-band {
    background: linear-gradient(135deg, #0c1730 0%, #122145 100%);
    padding: 4rem 0; text-align: center;
    position: relative; overflow: hidden;
    border-top: 1px solid rgba(0,159,227,.2);
    border-bottom: 1px solid rgba(0,159,227,.2);
}
.dway-cta-band--small { padding: 3rem 0; }
.dway-cta-band::before {
    content:''; position: absolute; inset:0;
    background: radial-gradient(ellipse 60% 80% at 50% 50%, rgba(0,159,227,.10) 0%, transparent 70%);
    pointer-events: none;
}
.dway-cta-band > * { position: relative; }
.dway-cta-band h2 {
    font-size: clamp(1.5rem, 3vw, 2.25rem);
    font-weight: 800; color: #fff;
    margin: .5rem 0 .75rem; letter-spacing: -.02em;
}
.dway-cta-band p {
    color: var(--dway-muted);
    max-width: 540px; margin: 0 auto 1.5rem;
}
.dway-cta-band__links {
    display: flex; flex-wrap: wrap; justify-content: center;
    gap: .25rem 1.25rem;
    margin-top: 1.5rem;
    list-style: none;
    font-size: .85rem;
}
.dway-cta-band__links a { color: var(--dway-muted); }
.dway-cta-band__links a:hover { color: var(--dway-blue); }

/* ─── Roadmap ────────────────────────────────────────────────── */
.dway-roadmap {
    display: grid; gap: 1.25rem;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}
.dway-roadmap__col {
    background: var(--dway-dark2);
    border: 1px solid var(--dway-line);
    border-radius: var(--dway-radius);
    padding: 1.25rem;
}
.dway-roadmap__col header {
    display: flex; justify-content: space-between; align-items: center;
    margin-bottom: 1rem;
}
.dway-roadmap__col h3 { color: #fff; font-size: 1rem; font-weight: 700; }
.dway-roadmap__col ul { list-style: none; display: flex; flex-direction: column; gap: 1rem; }
.dway-roadmap__col li p {
    font-size: .85rem; color: var(--dway-text); line-height: 1.5;
    margin-bottom: .35rem;
}

.dway-progress {
    position: relative;
    height: 8px; border-radius: 4px;
    background: rgba(255,255,255,.06);
    overflow: hidden;
}
.dway-progress__bar {
    height: 100%; border-radius: 4px;
    background: linear-gradient(90deg, var(--dway-blue), var(--dway-green));
    transition: width .8s ease;
}
.dway-progress__lbl {
    position: absolute; right: 0; top: -1.1rem;
    font-size: .7rem; font-weight: 600; color: var(--dway-muted);
}

/* ─── Timeline (Releases / Incidents) ────────────────────────── */
.dway-timeline {
    list-style: none;
    border-left: 2px solid var(--dway-line);
    padding-left: 2rem;
    margin-left: .5rem;
    display: flex; flex-direction: column; gap: 2rem;
}
.dway-timeline__item { position: relative; }
.dway-timeline__dot {
    position: absolute; left: -2.6rem; top: .35rem;
    width: 14px; height: 14px;
    border-radius: 50%;
    background: var(--dway-blue);
    border: 3px solid var(--dway-dark);
    box-shadow: 0 0 0 1px var(--dway-blue);
}
.dway-timeline__dot--green  { background: var(--dway-green); box-shadow: 0 0 0 1px var(--dway-green); }
.dway-timeline__dot--orange { background: var(--dway-orange); box-shadow: 0 0 0 1px var(--dway-orange); }
.dway-timeline__dot--red    { background: var(--dway-red);    box-shadow: 0 0 0 1px var(--dway-red); }
.dway-timeline__head { margin-bottom: .75rem; }
.dway-timeline__head h3 {
    display: flex; align-items: center; gap: .75rem; flex-wrap: wrap;
    font-size: .95rem; color: #fff; font-weight: 700;
}
.dway-timeline__ver { font-family: var(--mono); color: var(--dway-blue); }
.dway-timeline__date { font-size: .8rem; color: var(--dway-dim); font-weight: 500; }
.dway-timeline__title { color: var(--dway-text); margin-top: .25rem; font-weight: 600; }
.dway-timeline__list { list-style: none; display: flex; flex-direction: column; gap: .5rem; margin-top: .25rem; }
.dway-timeline__list li {
    display: flex; align-items: flex-start; gap: .65rem;
    font-size: .88rem; color: var(--dway-muted); line-height: 1.55;
}
.dway-timeline__body { color: var(--dway-muted); font-size: .88rem; line-height: 1.6; }

.dway-tag {
    flex-shrink: 0;
    font-size: .68rem; font-weight: 700;
    padding: .15rem .55rem; border-radius: 2rem;
    letter-spacing: .04em; text-transform: uppercase;
    margin-top: 2px;
}
.dway-tag--feature  { background: rgba(0,159,227,.12); color: var(--dway-blue);   border: 1px solid rgba(0,159,227,.25); }
.dway-tag--perf     { background: rgba(0,208,132,.12); color: var(--dway-green);  border: 1px solid rgba(0,208,132,.25); }
.dway-tag--fix      { background: rgba(255,168,69,.12);color: var(--dway-orange); border: 1px solid rgba(255,168,69,.25);}
.dway-tag--breaking { background: rgba(255,91,91,.12); color: var(--dway-red);    border: 1px solid rgba(255,91,91,.25); }

/* ─── Status banner & table ──────────────────────────────────── */
.dway-status-banner {
    display: flex; align-items: center; gap: .75rem; flex-wrap: wrap;
    margin-top: 1.25rem;
    padding: 1rem 1.25rem;
    background: rgba(0,208,132,.08);
    border: 1px solid rgba(0,208,132,.3);
    border-radius: var(--dway-radius);
}
.dway-status-banner--orange {
    background: rgba(255,168,69,.08);
    border-color: rgba(255,168,69,.3);
}
.dway-status-banner--red {
    background: rgba(255,91,91,.08);
    border-color: rgba(255,91,91,.3);
}
.dway-status-banner strong { color: #fff; flex: 1; min-width: 0; }
.dway-status-banner small { color: var(--dway-muted); font-size: .78rem; }

.dway-status-table {
    width: 100%; border-collapse: collapse;
    background: var(--dway-dark2);
    border: 1px solid var(--dway-line);
    border-radius: var(--dway-radius);
    overflow: hidden;
}
.dway-status-table th, .dway-status-table td {
    padding: .85rem 1rem;
    text-align: left;
    border-bottom: 1px solid var(--dway-line);
    font-size: .88rem;
}
.dway-status-table thead th {
    background: rgba(255,255,255,.03);
    color: var(--dway-dim);
    font-size: .72rem; font-weight: 700;
    letter-spacing: .08em; text-transform: uppercase;
}
.dway-status-table tbody th { color: #fff; font-weight: 600; }
.dway-status-table tbody td { color: var(--dway-muted); }
.dway-status-table tbody tr:last-child th,
.dway-status-table tbody tr:last-child td { border-bottom: none; }
.dway-status-table tbody tr:hover { background: rgba(255,255,255,.02); }

/* ─── Form ───────────────────────────────────────────────────── */
.dway-form {
    background: var(--dway-dark2);
    border: 1px solid var(--dway-line);
    border-radius: var(--dway-radius);
    padding: 1.75rem;
    display: flex; flex-direction: column; gap: 1rem;
}
.dway-form__row { display: flex; flex-direction: column; gap: .35rem; }
.dway-form__row label {
    font-size: .8rem; font-weight: 600; color: var(--dway-text);
    letter-spacing: .02em;
}
.dway-form input,
.dway-form textarea,
.dway-form select {
    background: rgba(255,255,255,.03);
    border: 1px solid var(--dway-line);
    color: #fff; font-family: inherit; font-size: .95rem;
    padding: .7rem .85rem;
    border-radius: var(--dway-radius-sm);
    transition: border-color .15s, background .15s;
}
.dway-form input:focus,
.dway-form textarea:focus,
.dway-form select:focus {
    outline: none;
    border-color: var(--dway-blue);
    background: rgba(0,159,227,.04);
}
/* Aufgeklappte Select-Optionen lesbar machen (Browser-Default ist sonst weiß-auf-weiß) */
.dway-form select option {
    background: var(--dway-dark2);
    color: #fff;
}
.dway-form select option:checked,
.dway-form select option:hover {
    background: var(--dway-blue);
    color: #fff;
}
.dway-form__actions {
    display: flex; flex-direction: column; gap: .75rem; align-items: flex-start;
    margin-top: .5rem;
}
.dway-form__hint { font-size: .75rem; color: var(--dway-dim); }

.dway-alert {
    padding: 1rem 1.25rem; border-radius: var(--dway-radius-sm);
    margin-bottom: 1rem; font-size: .9rem;
}
.dway-alert--success {
    background: rgba(0,208,132,.1);
    border: 1px solid rgba(0,208,132,.3);
    color: var(--dway-green);
}
.dway-alert--error {
    background: rgba(255,91,91,.1);
    border: 1px solid rgba(255,91,91,.3);
    color: var(--dway-red);
}

/* ─── Link helper ────────────────────────────────────────────── */
.dway-link {
    color: var(--dway-blue);
    text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-color: rgba(0,159,227,.4);
}
.dway-link:hover { color: #4cc4ff; text-decoration-color: var(--dway-blue); }

/* ─── Footer ─────────────────────────────────────────────────── */
.dway-footer {
    background: linear-gradient(180deg, var(--dway-dark) 0%, #060912 100%);
    border-top: 1px solid var(--dway-line);
    padding: 3.5rem 0 4.5rem;
    margin-top: auto;
    margin-left: var(--dway-sidebar-w);
    color: var(--dway-muted);
    position: relative;
    z-index: 1;
}
.dway-footer__inner { max-width: 1180px; margin: 0 auto; padding: 0 1.5rem; }
.dway-footer__grid {
    display: grid; gap: 2rem;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    margin-bottom: 2rem;
}
.dway-footer__col {}
.dway-footer__brand {
    color: #fff; font-size: 1.05rem; margin-bottom: .5rem;
}
.dway-footer__brand strong { color: var(--dway-blue); font-weight: 800; }
.dway-footer__brand span { color: var(--dway-muted); font-size: .85rem; }
.dway-footer__heading {
    font-size: .8rem; font-weight: 700; color: #fff;
    margin-bottom: .75rem; letter-spacing: .05em;
}
.dway-footer__list { list-style: none; }
.dway-footer__list li { margin-bottom: .35rem; }
.dway-footer__list a, .dway-footer__col a, .dway-footer address a {
    color: var(--dway-muted); font-size: .85rem;
}
.dway-footer__list a:hover, .dway-footer__col a:hover { color: var(--dway-blue); }
.dway-footer__text { font-size: .85rem; line-height: 1.6; margin-bottom: .5rem; }
.dway-footer__muted { color: var(--dway-dim); font-size: .78rem; }
.dway-footer address { font-style: normal; }
.dway-footer address p { font-size: .85rem; margin-bottom: .35rem; line-height: 1.55; }

.dway-footer__seo {
    border-top: 1px solid var(--dway-line);
    padding-top: 1rem; margin-top: 1rem;
    font-size: .72rem; line-height: 1.7; color: var(--dway-dim);
}
.dway-footer__seo a { color: var(--dway-blue); }

.dway-footer__bottom {
    display: flex; justify-content: space-between; align-items: center;
    flex-wrap: wrap; gap: 1rem;
    border-top: 1px solid var(--dway-line);
    padding-top: 1rem; margin-top: 1rem;
    font-size: .78rem;
}
.dway-footer__bottom ul {
    list-style: none; display: flex; gap: 1.25rem; flex-wrap: wrap;
}

/* ─── Scroll to top ──────────────────────────────────────────── */
.dway-scroll-top {
    position: fixed; bottom: 1.25rem; right: 1.25rem;
    width: 44px; height: 44px;
    border-radius: 50%; border: 1px solid var(--dway-line);
    background: var(--dway-dark2); color: var(--dway-blue);
    display: flex; align-items: center; justify-content: center;
    cursor: pointer; z-index: 80;
    transition: background .15s, transform .15s, opacity .2s;
    box-shadow: 0 4px 18px rgba(0,0,0,.4);
}
.dway-scroll-top:hover { background: var(--dway-blue); color: #fff; transform: translateY(-2px); }
.dway-scroll-top[hidden] { display: none; }

/* ─── Mobile (< 1024px) ──────────────────────────────────────── */
@media (max-width: 1023px) {
    .dway-topbar { display: flex; }
    .dway-main {
        margin-left: 0;
        padding-top: var(--dway-topbar-h);
    }
    .dway-footer { margin-left: 0; }
    .dway-sidebar {
        transform: translateX(-100%);
        box-shadow: none;
        z-index: 99;
    }
    .dway-sidebar.is-open {
        transform: translateX(0);
        box-shadow: 8px 0 40px rgba(0,0,0,.7);
    }
    .dway-overlay { display: block; pointer-events: none; }
    .dway-overlay.is-open { opacity: 1; pointer-events: auto; }

    .dway-hero { padding: 3rem 0 1.5rem; }
    .dway-section { padding: 3rem 0; }
}

@media (max-width: 600px) {
    .dway-container { padding: 0 1rem; }
    .dway-hero__title { font-size: 1.75rem; }
    .dway-hero__search { flex-direction: column; padding: .75rem; }
    .dway-hero__search input { width: 100%; }
    .dway-hero__search .dway-btn { width: 100%; justify-content: center; }
    .dway-hero__actions .dway-btn { flex: 1; justify-content: center; }
    .dway-form { padding: 1.25rem; }
    .dway-faq summary { flex-wrap: wrap; gap: .5rem; }
    .dway-faq__cat { order: 1; }
    .dway-faq__chevron { order: 2; margin-left: auto; }
    .dway-faq__q { order: 3; flex: 1 1 100%; }
    .dway-status-table { font-size: .82rem; }
    .dway-status-table th, .dway-status-table td { padding: .6rem .65rem; }
}
