@font-face{font-family:"Instrument Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/instrument-sans-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Instrument Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/instrument-sans-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Instrument Sans Fallback";font-style:normal;font-weight:400 700;src:local("Arial");size-adjust:107.31%}

:root{
  --navy:#050953;
  --slate:#53637E;
  --teal:#698894;
  --blue:#145BD7;
  --ok:#0D8A61;
  --warn:#C56A00;

  --bg:#FFFFFF;
  --bg-alt:#F5F6F9;
  --surface:#FFFFFF;
  --surface-2:#FAFAFA;
  --line:#E3E6EE;
  --text:#050953;
  --text-muted:#53637E;
  --accent:#145BD7;
  --accent-soft:rgba(20,91,215,.08);
  --dark-band:#050953;
  --dark-band-text:#EDF0FA;
  --shadow-sm:0 1px 2px rgba(5,9,83,.06),0 2px 8px rgba(5,9,83,.05);
  --shadow-lg:0 24px 60px -20px rgba(5,9,83,.28),0 8px 24px -12px rgba(5,9,83,.14);

  --font:"Instrument Sans","Instrument Sans Fallback",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --radius:14px;
  --radius-lg:22px;
  --container:1180px;
  --gutter:clamp(16px,4vw,32px);
}

@media (prefers-color-scheme:dark){
  :root{
    --bg:#080C1E;
    --bg-alt:#0E1430;
    --surface:#121A3A;
    --surface-2:#18214A;
    --line:#26305C;
    --text:#EDF0FA;
    --text-muted:#A3ADCB;
    --accent:#7E93D8;
    --accent-soft:rgba(126,147,216,.14);
    --dark-band:#1C2447;
    --dark-band-text:#EDF0FA;
    --shadow-sm:0 1px 2px rgba(0,0,0,.3);
    --shadow-lg:0 24px 60px -20px rgba(0,0,0,.6);
  }
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}
h1,h2,h3{line-height:1.15;letter-spacing:-.02em;margin:0;font-weight:700}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}

.container{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}
section[id]{scroll-margin-top:72px}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:16px;top:-60px;z-index:100;background:var(--navy);color:#fff;padding:10px 16px;border-radius:8px}
.skip-link:focus{top:12px}
.aufbau-hinweis{margin:0;padding:8px var(--gutter);background:var(--dark-band);color:var(--dark-band-text);font-size:.88rem;line-height:1.4;text-align:center}

.rechtstext{max-width:760px;padding-top:clamp(40px,6vw,72px);padding-bottom:clamp(48px,8vw,96px)}
.rechtstext h1{font-size:clamp(2rem,4vw,2.6rem);margin-bottom:28px}
.rechtstext h2{font-size:1.25rem;margin:36px 0 10px}
.rechtstext p,.rechtstext li{color:var(--text-muted)}
.rechtstext p+p{margin-top:10px}
.rechtstext ul{list-style:disc;padding-left:22px;margin-top:8px}

.eyebrow{font-size:.82rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--teal);margin-bottom:14px}
.eyebrow-light{color:#A8C2F0}
.accent{color:var(--accent)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:999px;font-weight:600;font-size:1rem;text-decoration:none;border:1px solid transparent;transition:transform .15s ease,background-color .15s ease,box-shadow .15s ease;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn-sm{min-height:40px;padding:0 18px;font-size:.94rem}
.btn-primary{background:var(--navy);color:#fff;box-shadow:0 6px 18px -8px rgba(5,9,83,.55)}
.btn-primary:hover{background:#0B1272}
.btn-ghost{color:var(--text);border-color:var(--line);background:var(--surface)}
.btn-ghost:hover{border-color:var(--slate)}
.btn-light{background:#fff;color:var(--navy)}
@media (prefers-color-scheme:dark){
  .btn-primary{background:#EDF0FA;color:#080C1E;box-shadow:none}
  .btn-primary:hover{background:#fff}
}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:72px;gap:24px}
.brand{display:flex;align-items:center;flex-shrink:0}
.brand-logo{height:30px;width:auto}
.brand-logo--dark{display:none}
@media (prefers-color-scheme:dark){.brand-logo--light{display:none}.brand-logo--dark{display:block}}

.main-nav{display:flex;align-items:center;gap:32px}
.main-nav ul{display:flex;gap:28px}
.main-nav ul a{color:var(--text-muted);text-decoration:none;font-weight:500;font-size:.96rem}
.main-nav ul a:hover{color:var(--text)}
.nav-actions{display:flex;align-items:center;gap:18px}
.link-quiet{color:var(--text);text-decoration:none;font-weight:600;font-size:.96rem}
.link-quiet:hover{text-decoration:underline}
.nav-toggle{display:none}

@media (max-width:920px){
  .nav-toggle{display:inline-flex;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;padding:0 11px;border:1px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer}
  .nav-toggle-bar{display:block;height:2px;border-radius:2px;background:var(--text);transition:transform .2s ease}
  .nav-toggle[aria-expanded="true"] .nav-toggle-bar:first-child{transform:translateY(4px) rotate(45deg)}
  .nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(2){transform:translateY(-4px) rotate(-45deg)}
  .main-nav{display:none;position:absolute;left:0;right:0;top:72px;flex-direction:column;align-items:stretch;gap:8px;padding:12px var(--gutter) 24px;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:var(--shadow-lg)}
  .main-nav.is-open{display:flex}
  .main-nav ul{flex-direction:column;gap:0}
  .main-nav ul a{display:block;padding:14px 0;border-bottom:1px solid var(--line);font-size:1.05rem;color:var(--text)}
  .nav-actions{flex-direction:column;align-items:stretch;gap:10px;margin-top:12px}
  .nav-actions .link-quiet{padding:12px 0;text-align:center}
  .nav-actions .btn{min-height:48px}
}

/* Hero */
.hero{position:relative;overflow:hidden;padding:clamp(48px,8vw,96px) 0 clamp(56px,8vw,104px)}
.hero::before{content:"";position:absolute;inset:-40% -10% auto auto;width:70%;aspect-ratio:1;background:radial-gradient(closest-side,var(--accent-soft),transparent);pointer-events:none}
.hero-mitte{position:relative}
.hero-mitte .hero-copy{max-width:820px;margin:0 auto;text-align:center}
.hero-mitte .lead{margin:0 auto}
.hero-mitte .hero-actions,.hero-mitte .hero-facts{justify-content:center}
.hero h1{font-size:clamp(2.3rem,5.2vw,3.9rem);margin-bottom:22px}
.lead{font-size:clamp(1.05rem,1.6vw,1.2rem);color:var(--text-muted);max-width:36em}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.hero-actions-center{justify-content:center}
.hero-facts{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:28px;font-size:.92rem;color:var(--text-muted)}
.hero-facts li{display:flex;align-items:center;gap:8px}
.hero-facts li::before{content:"";width:16px;height:16px;flex-shrink:0;border-radius:50%;background:var(--ok) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.2 2.2 4.8-4.8' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}

/* Produktdemo */
.produktdemo{margin:clamp(40px,6vw,64px) 0 0;width:100%}
.produktdemo-rahmen{position:relative;width:100%;aspect-ratio:1600/920;border-radius:clamp(12px,1.6vw,22px);overflow:hidden;background:#EEF0F5;border:1px solid rgba(5,9,83,.1);box-shadow:0 50px 100px -40px rgba(5,9,83,.5),0 18px 40px -20px rgba(5,9,83,.3)}
.produktdemo-rahmen iframe{position:absolute;left:0;top:0;width:1600px;height:920px;border:0;transform-origin:0 0;pointer-events:none}
.produktdemo figcaption{margin-top:14px;text-align:center;font-size:.9rem;color:var(--text-muted)}

/* Industries strip */
.industries{border-block:1px solid var(--line);background:var(--bg-alt);padding:22px 0}
.industries .container{display:flex;align-items:center;gap:12px 28px;flex-wrap:wrap}
.industries-label{font-size:.85rem;color:var(--text-muted);font-weight:500}
.industries-list{display:flex;flex-wrap:wrap;gap:8px}
.industries-list li{padding:6px 14px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font-size:.9rem;font-weight:600;color:var(--slate)}
@media (prefers-color-scheme:dark){.industries-list li{color:var(--text-muted)}}

/* Sections */
.section{padding:clamp(64px,9vw,112px) 0}
.section-alt{background:var(--bg-alt)}
.section-head{max-width:720px;margin:0 auto clamp(36px,5vw,56px);text-align:center}
.section-head h2{font-size:clamp(1.8rem,3.6vw,2.6rem);margin-bottom:16px}
.section-head p:not(.eyebrow){color:var(--text-muted);font-size:1.08rem}
.section-head-left{text-align:left;margin-left:0}

/* Steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;counter-reset:none}
.step{position:relative;padding:28px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}
.step-no{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--accent-soft);color:var(--accent);font-weight:700;margin-bottom:18px}
.step h3{font-size:1.22rem;margin-bottom:10px}
.step p{color:var(--text-muted);font-size:.98rem}
@media (max-width:860px){.steps{grid-template-columns:1fr}}

/* Modules */
.modules{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}
.module{padding:clamp(24px,3.5vw,36px);border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.module-head{display:flex;align-items:center;gap:14px;margin-bottom:22px}
.module-head h3{font-size:1.4rem}
.module-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--navy);color:#fff;flex-shrink:0}
.module-icon svg{width:24px;height:24px}
@media (prefers-color-scheme:dark){.module-icon{background:var(--accent-soft);color:var(--accent)}}
.checklist li{position:relative;padding:9px 0 9px 30px;border-top:1px solid var(--line)}
.checklist li:first-child{border-top:0}
.checklist li::before{content:"";position:absolute;left:0;top:13px;width:18px;height:18px;border-radius:50%;background:var(--accent-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.2 2.2 4.8-4.8' fill='none' stroke='%23698894' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
@media (max-width:860px){.modules{grid-template-columns:1fr}}

.features{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.feature{padding:26px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}
.feature h3{font-size:1.08rem;margin-bottom:8px}
.feature p{color:var(--text-muted);font-size:.96rem}
@media (max-width:980px){.features{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.features{grid-template-columns:1fr}}

/* Security band */
.section-dark{background:var(--dark-band);color:var(--dark-band-text)}
.security{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(32px,6vw,80px);align-items:center}
.security h2{font-size:clamp(1.8rem,3.6vw,2.6rem);margin-bottom:20px}
.security-copy p:not(.eyebrow){color:rgba(237,240,250,.78);margin-bottom:14px}
.security-points{display:grid;gap:12px}
.security-points li{padding:18px 20px;border-radius:var(--radius);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:2px}
.security-points strong{font-size:1.04rem}
.security-points span{color:rgba(237,240,250,.7);font-size:.94rem}
@media (max-width:860px){.security{grid-template-columns:1fr}}

/* Plans */

/* FAQ */
.faq-wrap{display:grid;grid-template-columns:.8fr 1.4fr;gap:clamp(24px,5vw,64px);align-items:start}
.faq details{border-bottom:1px solid var(--line)}
.faq details:first-child{border-top:1px solid var(--line)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;cursor:pointer;font-weight:600;font-size:1.06rem;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";width:12px;height:12px;flex-shrink:0;border-right:2px solid var(--slate);border-bottom:2px solid var(--slate);transform:rotate(45deg) translate(-3px,-3px);transition:transform .2s ease}
.faq details[open] summary::after{transform:rotate(-135deg) translate(-3px,-3px)}
.faq details p{padding:0 0 22px;color:var(--text-muted);max-width:60ch}
@media (max-width:860px){.faq-wrap{grid-template-columns:1fr}.faq-wrap .section-head{margin-bottom:8px}}

/* CTA */
.cta-section{padding-top:0;background:var(--bg-alt)}
.cta{padding:clamp(40px,6vw,72px) clamp(24px,5vw,64px);border-radius:28px;background:linear-gradient(135deg,#050953 0%,#1C2B7A 55%,#53637E 100%);color:#fff;text-align:center}
.cta h2{font-size:clamp(1.7rem,3.4vw,2.4rem);margin-bottom:12px}
.cta p{color:rgba(255,255,255,.78);font-size:1.08rem}
.cta .hero-actions{margin-top:28px}

/* Footer */
.site-footer{padding:40px 0;border-top:1px solid var(--line);background:var(--bg)}
.footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}
.footer-brand{display:flex;flex-direction:column;gap:8px}
.footer-brand .brand-logo{height:24px}
.footer-brand p{color:var(--text-muted);font-size:.92rem}
.footer-nav{display:flex;flex-wrap:wrap;gap:8px 24px}
.footer-nav a{color:var(--text-muted);text-decoration:none;font-size:.94rem}
.footer-nav a:hover{color:var(--text);text-decoration:underline}
.footer-copy{color:var(--text-muted);font-size:.88rem}

/* Flow für Mac */
.flow-icon{width:96px;height:96px;margin:0 auto 20px;border-radius:22px;box-shadow:var(--shadow-lg)}
.flow-taste{display:inline-block;min-width:1.9em;padding:.05em .45em;border:1px solid var(--line);border-bottom-width:2px;border-radius:6px;background:var(--surface);color:var(--text);font:600 .85em/1.4 var(--font);text-align:center}
.section-dark .flow-taste{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25);color:inherit}
.flow-hinweis{margin-top:20px;font-size:.9rem;opacity:.8}
.flow-hinweis a{color:inherit}
