/* KAGORA Theme */
@font-face{font-family:'Figtree';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/figtree-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'Figtree';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/figtree-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'Figtree';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/figtree-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'Figtree';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/figtree-latin-700-normal.woff2') format('woff2')}
@font-face{font-family:'Figtree';font-style:normal;font-weight:800;font-display:swap;src:url('../fonts/figtree-latin-800-normal.woff2') format('woff2')}
@font-face{font-family:'Figtree';font-style:normal;font-weight:900;font-display:swap;src:url('../fonts/figtree-latin-900-normal.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/ibm-plex-mono-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/ibm-plex-mono-latin-600-normal.woff2') format('woff2')}

:root{
  /* Kagora Markenfarben */
  --k-blue:#406FBB; --k-dark:#313D57; --k-light:#5B7BBA;
  --k-green:#4CAF50; --k-yellow:#FFB74D; --k-red:#F44336;
  --paper:#FAFAFA; --gray800:#303030;

  --bg:var(--paper); --surface:#FFFFFF; --ink:var(--gray800); --head:var(--k-dark);
  --muted:#5E6677; --line:#E3E7EF; --tint:#EDF2FA; --tint-2:#DDE7F6;
  --primary:var(--k-blue); --primary-hover:#35609F; --on-primary:#FFFFFF;
  --green-soft:#E6F4E7; --yellow-soft:#FFF1DC; --red-soft:#FDE8E6;
  --shadow:0 18px 40px -22px rgba(49,61,87,.35);
  --sans:"Figtree", "Segoe UI", "Helvetica Neue", Arial, system-ui, sans-serif;
  --mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;
  --wrap:1200px;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#1A2030; --surface:#232B3D; --ink:#E6EAF2; --head:#FFFFFF; --muted:#A5AEC2; --line:#323C52;
    --tint:#222C42; --tint-2:#2B3752; --primary:#6F95D6; --primary-hover:#86A7E0; --on-primary:#10172A;
    --green-soft:#1F3526; --yellow-soft:#3A2F1E; --red-soft:#3D2222;
    --shadow:0 18px 40px -22px rgba(0,0,0,.6);
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#1A2030; --surface:#232B3D; --ink:#E6EAF2; --head:#FFFFFF; --muted:#A5AEC2; --line:#323C52;
  --tint:#222C42; --tint-2:#2B3752; --primary:#6F95D6; --primary-hover:#86A7E0; --on-primary:#10172A;
  --green-soft:#1F3526; --yellow-soft:#3A2F1E; --red-soft:#3D2222;
  --shadow:0 18px 40px -22px rgba(0,0,0,.6);
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:inherit}
html{scroll-padding-top:calc(env(safe-area-inset-top,0px) + 84px);scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit}
:focus-visible{outline:3px solid var(--k-yellow);outline-offset:3px;border-radius:8px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 clamp(18px,4vw,40px)}
h1,h2,h3,h4{margin:0;color:var(--head);font-weight:800;letter-spacing:-.02em;line-height:1.1}
p{margin:0}

/* Header */
.top{position:sticky;top:0;z-index:20;padding:12px 0;padding-top:calc(12px + env(safe-area-inset-top,0px))}
.top-in{display:flex;align-items:center;gap:24px;height:60px;padding:0 10px 0 22px;background:color-mix(in srgb,var(--surface) 86%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--line);border-radius:999px;box-shadow:var(--shadow)}
.brand{font-weight:900;font-size:1.2rem;letter-spacing:.12em;text-decoration:none;display:flex;align-items:center;gap:10px;color:var(--head)}
.mark{width:26px;height:26px;border-radius:9px;background:var(--k-blue);position:relative;flex:none}
.mark::after{content:"";position:absolute;right:-3px;bottom:-3px;width:11px;height:11px;border-radius:50%;background:var(--k-yellow);border:2px solid var(--surface)}
.nav{display:flex;gap:6px;margin-left:auto;font-weight:600;font-size:.98rem}
.nav a{text-decoration:none;color:var(--muted);padding:8px 14px;border-radius:999px}
.nav a:hover{color:var(--head);background:var(--tint)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:700;text-decoration:none;border:0;cursor:pointer;padding:13px 22px;border-radius:999px;background:var(--primary);color:var(--on-primary);white-space:nowrap;transition:background .15s,transform .15s}
.btn:hover{background:var(--primary-hover)}
.btn:active{transform:scale(.97)}
.btn-ghost{background:transparent;color:var(--head);box-shadow:inset 0 0 0 2px var(--line)}
.btn-ghost:hover{background:var(--tint)}
.btn-yellow{background:var(--k-yellow);color:#313D57}
.btn-yellow:hover{background:#FFC46E}
.top .btn{padding:10px 18px;font-size:.95rem}
@media (max-width:860px){.nav{display:none}.top .btn{margin-left:auto}}

/* Hero */
.hero{padding:clamp(16px,3vw,32px) 0 clamp(56px,8vw,100px)}
.hero-panel{background:var(--tint);border-radius:36px;padding:clamp(28px,5vw,64px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:center;position:relative;overflow:hidden}
.hero-panel::before{content:"";position:absolute;width:520px;height:520px;right:-140px;top:-160px;border-radius:50%;background:var(--tint-2)}
.hero-panel>*{position:relative}
@media (max-width:980px){.hero-panel{grid-template-columns:minmax(0,1fr)}}
.hello{display:inline-flex;align-items:center;gap:10px;background:var(--surface);border-radius:999px;padding:6px 14px 6px 6px;font-weight:600;font-size:.95rem;color:var(--head);box-shadow:var(--shadow)}
.hello .dot{width:28px;height:28px;border-radius:50%;background:var(--green-soft);display:grid;place-items:center}
.hello .dot::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--k-green)}
.hero h1{margin-top:22px;font-size:clamp(2.6rem,6vw,4.9rem);font-weight:900;letter-spacing:-.035em;line-height:1}
.hero-lede{margin-top:20px;font-size:1.2rem;color:var(--muted);max-width:42ch}
.picker{margin-top:32px}
.picker-q{font-weight:700;color:var(--head);margin-bottom:12px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{font:inherit;font-weight:600;padding:10px 16px 10px 12px;border-radius:999px;border:0;background:var(--surface);color:var(--head);cursor:pointer;display:inline-flex;align-items:center;gap:8px;box-shadow:0 1px 0 var(--line),0 4px 14px -8px rgba(49,61,87,.25);transition:background .15s,color .15s}
.chip .ic{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:.95rem;background:var(--tint)}
.chip:hover{background:var(--tint-2)}
.chip[aria-pressed="true"]{background:var(--k-dark);color:#fff}
.chip[aria-pressed="true"] .ic{background:rgba(255,255,255,.14)}
.fit{margin-top:18px;background:var(--surface);border-radius:22px;padding:18px 20px;max-width:54ch;box-shadow:var(--shadow)}
.fit-pkg{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}
.pill{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:.95rem;padding:6px 12px;border-radius:999px;background:var(--tint);color:var(--head)}
.fit-pkg a{color:var(--primary);font-weight:700;text-decoration:none}
.fit-pkg a:hover{text-decoration:underline}

/* Device */
.device{background:var(--k-dark);border-radius:34px;padding:12px;box-shadow:0 40px 70px -35px rgba(49,61,87,.7)}
.screen{background:var(--surface);border-radius:24px;min-height:430px;padding:22px;overflow:hidden}
.screen-head{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;color:var(--muted);margin-bottom:16px}
.screen-head b{color:var(--head);font-size:1.05rem}
.badge{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:.8rem;padding:4px 10px;border-radius:999px}
.b-green{background:var(--green-soft);color:#2E7D32}
.b-yellow{background:var(--yellow-soft);color:#8A5A12}
.b-blue{background:var(--tint);color:var(--primary)}
.b-red{background:var(--red-soft);color:#C62828}
:root[data-theme="dark"] .b-green{color:#8FD694}:root[data-theme="dark"] .b-yellow{color:#FFCC80}:root[data-theme="dark"] .b-red{color:#FF8A80}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .b-green{color:#8FD694}:root:not([data-theme="light"]) .b-yellow{color:#FFCC80}:root:not([data-theme="light"]) .b-red{color:#FF8A80}}
.badge.live::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--k-green)}
.scene{animation:in .35s ease-out}
@keyframes in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.orders{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.bon{font-family:var(--mono);font-size:.82rem;line-height:1.55;background:#FFFDF7;color:#303030;padding:16px 14px 18px;border-radius:14px;border:1px solid #EFE8D8}
.bon.new{animation:print .6s ease-out}
@keyframes print{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
.bon-no{font-family:var(--sans);font-size:1.6rem;font-weight:800;color:#313D57}
.bon hr{border:0;border-top:1px dashed #CFC7B3;margin:9px 0}
.bon .row{display:flex;justify-content:space-between;gap:8px}
.bon .badge{font-family:var(--sans);margin-top:10px}
.call{margin-top:14px;width:100%;font:inherit;font-weight:800;padding:14px;border-radius:16px;border:0;background:var(--k-yellow);color:#313D57;cursor:pointer}
.call:disabled{background:var(--green-soft);color:#2E7D32;cursor:default}

.hh{background:var(--k-yellow);color:#313D57;border-radius:16px;padding:12px 16px;display:flex;justify-content:space-between;gap:12px;font-weight:700;margin-bottom:10px}
.hh span{font-weight:500}
.menu-item{display:grid;grid-template-columns:1fr auto;gap:2px 16px;padding:12px 4px;border-bottom:1px solid var(--line)}
.menu-item:last-of-type{border-bottom:0}
.menu-item h4{font-size:1.02rem;color:var(--head)}
.menu-item .price{font-weight:800;text-align:right;color:var(--head)}
.menu-item .price s{color:var(--muted);font-weight:500;margin-right:6px}
.allerg{grid-column:1/-1;font-size:.84rem;color:var(--muted)}
.add{margin-top:10px;display:flex;justify-content:space-between;align-items:center;background:var(--k-blue);color:#fff;border-radius:16px;padding:12px 16px;font-weight:700}

.site{border:1px solid var(--line);border-radius:18px;overflow:hidden}
.site-bar{display:flex;align-items:center;gap:6px;padding:10px 12px;background:var(--tint);font-size:.8rem;color:var(--muted)}
.site-bar i{width:9px;height:9px;border-radius:50%;background:var(--line);display:block}
.site-bar span{margin-left:8px;background:var(--surface);border-radius:999px;padding:2px 12px;flex:1}
.site-hero{padding:22px 20px;background:linear-gradient(0deg,var(--surface),var(--surface))}
.site-hero h4{font-size:1.5rem}
.site-hero p{color:var(--muted);font-size:.92rem;margin-top:6px}
.site-btns{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.site-btns span{font-weight:700;font-size:.85rem;padding:8px 14px;border-radius:999px;background:var(--k-blue);color:#fff}
.site-btns span+span{background:var(--tint);color:var(--head)}
.site-info{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 20px 20px}
.site-info div{background:var(--tint);border-radius:14px;padding:10px 12px;font-size:.85rem}
.site-info b{display:block;color:var(--head)}
.site-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}

.check{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.check li{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;padding:12px 14px;background:var(--bg);border-radius:16px}
.check li small{color:var(--muted)}
.ico{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;font-weight:900;font-size:.95rem}
.i-ok{background:var(--green-soft);color:#2E7D32}
.i-warn{background:var(--yellow-soft);color:#8A5A12}
.person{margin-top:14px;display:flex;align-items:center;gap:14px;padding:14px;border-radius:18px;background:var(--tint)}
.avatar{width:46px;height:46px;border-radius:50%;background:var(--k-blue);color:#fff;display:grid;place-items:center;font-weight:800;flex:none}

/* Sections */
section{padding:clamp(56px,8vw,110px) 0}
.sec-head{max-width:720px;margin-bottom:clamp(32px,4vw,52px)}
.sec-head h2{font-size:clamp(2rem,4.2vw,3.2rem)}
.sec-head p{margin-top:14px;color:var(--muted);font-size:1.15rem;max-width:56ch}
.center{text-align:center;margin-left:auto;margin-right:auto}
.center p{margin-left:auto;margin-right:auto}

/* Produkte */
.prod-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}
.prod{background:var(--surface);border:1px solid var(--line);border-radius:28px;padding:30px;display:flex;flex-direction:column;gap:16px}
.prod.big{grid-column:span 4;background:var(--k-blue);border-color:transparent;color:#fff}
.prod.big h3,.prod.big .from{color:#fff}
.prod.big .desc{color:rgba(255,255,255,.86)}
.prod.side{grid-column:span 2}
.prod.half{grid-column:span 3}
@media (max-width:980px){.prod.big,.prod.side,.prod.half{grid-column:span 6}}
.prod-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.prod h3{font-size:1.6rem}
.prod .desc{color:var(--muted)}
.from{font-weight:800;color:var(--head);font-size:1.1rem}
.from small{font-weight:500;color:inherit;opacity:.75;font-size:.9rem}
.feat{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.feat li{font-size:.92rem;font-weight:600;padding:6px 12px;border-radius:999px;background:var(--tint);color:var(--head)}
.prod.big .feat li{background:rgba(255,255,255,.14);color:#fff}
.prod.big .badge{background:rgba(255,255,255,.18);color:#fff}
.prod.big .badge.live::before{background:#9BE09F}
.prod-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.prod.big .btn{background:#fff;color:var(--k-dark)}
.prod.big .btn:hover{background:var(--k-yellow)}

/* Preise */
.soft{background:var(--tint)}
.plans{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}
@media (max-width:1040px){.plans{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:580px){.plans{grid-template-columns:1fr}}
.plan-c{background:var(--surface);border-radius:28px;padding:28px 24px;display:flex;flex-direction:column;gap:16px;position:relative}
.plan-c.fav{background:var(--k-dark);color:#E9EDF5;transform:translateY(-10px);box-shadow:0 30px 50px -30px rgba(49,61,87,.8)}
@media (max-width:1040px){.plan-c.fav{transform:none}}
.plan-c.fav h3,.plan-c.fav .amount{color:#fff}
.plan-c.fav .small,.plan-c.fav .setup{color:#B9C3D6}
.plan-c.fav .inc li::before{background:var(--k-yellow)}
.ribbon{position:absolute;top:-12px;left:24px;background:var(--k-yellow);color:#313D57;font-weight:800;font-size:.85rem;padding:5px 12px;border-radius:999px}
.plan-c h3{font-size:1.25rem}
.plan-c .small{font-size:.95rem;color:var(--muted);min-height:3em}
.amount{font-size:clamp(2.2rem,2.8vw,2.7rem);font-weight:900;letter-spacing:-.035em;line-height:1;color:var(--head)}
.amount .pre{font-size:1rem;font-weight:700;letter-spacing:0;margin-right:6px}
.amount .per{display:inline-block;font-size:1rem;font-weight:600;letter-spacing:0;margin-left:4px;opacity:.75}
.setup{font-size:.92rem;color:var(--muted);margin-top:6px}
.inc{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:.97rem;flex:1}
.inc li{padding-left:26px;position:relative}
.inc li::before{content:"";position:absolute;left:0;top:.35em;width:16px;height:16px;border-radius:50%;background:var(--k-green)}
.inc li::after{content:"";position:absolute;left:5.5px;top:calc(.35em + 3.5px);width:4px;height:7px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.plan-c.fav .inc li::after{border-color:#313D57}
.plan-c .btn{width:100%}
.plan-c.fav .btn{background:var(--k-yellow);color:#313D57}
.facts{margin-top:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:860px){.facts{grid-template-columns:1fr}}
.fact{background:var(--surface);border-radius:22px;padding:22px;display:flex;gap:14px}
.fact .ico{flex:none}
.fact h4{font-size:1.05rem;margin-bottom:4px}
.fact p{color:var(--muted);font-size:.97rem}
.note{margin-top:20px;color:var(--muted);font-size:.92rem;text-align:center}

/* IT */
.it-panel{background:var(--k-dark);color:#E9EDF5;border-radius:36px;padding:clamp(28px,5vw,64px);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(28px,4vw,56px)}
@media (max-width:940px){.it-panel{grid-template-columns:minmax(0,1fr)}}
.it-panel h2{color:#fff;font-size:clamp(2rem,4.2vw,3rem)}
.it-panel .lead{color:#B9C3D6;margin-top:14px;font-size:1.12rem;max-width:48ch}
.it-list{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:560px){.it-list{grid-template-columns:1fr}}
.it-list li{background:rgba(255,255,255,.07);border-radius:18px;padding:16px}
.it-list b{display:block;color:#fff}
.it-list span{color:#B9C3D6;font-size:.95rem}
.it-card{background:var(--k-light);border-radius:28px;padding:30px;align-self:start;color:#fff}
.it-card .avatar{background:var(--k-yellow);color:#313D57;width:56px;height:56px;font-size:1.1rem}
.it-quote{margin-top:18px;font-size:1.45rem;font-weight:800;line-height:1.25;color:#fff}
.it-card p{margin-top:12px;color:rgba(255,255,255,.88)}
.it-card .btn{margin-top:22px;background:#fff;color:var(--k-dark)}
.it-card .btn:hover{background:var(--k-yellow)}

/* Ablauf */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;counter-reset:s}
@media (max-width:940px){.steps{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.steps{grid-template-columns:1fr}}
.steps li{counter-increment:s;background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:24px}
.steps li::before{content:counter(s);display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--tint);color:var(--primary);font-weight:900;font-size:1.2rem;margin-bottom:16px}
.steps li:last-child::before{background:var(--k-yellow);color:#313D57}
.steps h3{font-size:1.2rem;margin-bottom:6px}
.steps p{color:var(--muted);font-size:.98rem}

/* Über uns */
.about{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,6vw,80px);align-items:center}
@media (max-width:940px){.about{grid-template-columns:minmax(0,1fr)}}
.about h2{font-size:clamp(2rem,4.2vw,3.2rem)}
.about-text p{font-size:1.12rem;margin-top:16px;max-width:52ch}
.quote{background:var(--yellow-soft);border-radius:24px;padding:22px 24px;font-size:1.35rem;font-weight:800;line-height:1.3;color:var(--head);margin-top:24px}
.team{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
@media (max-width:420px){.member{padding:18px 12px}.member .avatar{width:64px;height:64px}}
.member{background:var(--surface);border:1px solid var(--line);border-radius:28px;padding:26px;text-align:center}
.member .avatar{width:84px;height:84px;font-size:1.5rem;margin:0 auto 14px}
.member:nth-child(2) .avatar{background:var(--k-green)}
.member b{display:block;font-size:1.12rem;color:var(--head)}
.member span{color:var(--muted);font-size:.95rem}
.place{grid-column:1/-1;background:var(--tint);border-radius:22px;padding:16px 20px;display:flex;gap:12px;align-items:center;font-weight:600;color:var(--head)}
.pin{width:16px;height:16px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--k-red);flex:none}

/* FAQ */
.faq{max-width:800px;margin:0 auto;display:grid;gap:10px}
.faq details{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:0 22px}
.faq summary{cursor:pointer;list-style:none;padding:18px 40px 18px 0;font-weight:700;font-size:1.08rem;color:var(--head);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;background:var(--tint);color:var(--primary);display:grid;place-items:center;font-size:1.2rem;font-weight:700;transition:transform .2s}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq details p{padding:0 0 20px;color:var(--muted);max-width:66ch}

/* Kontakt */
.contact{background:var(--k-blue);border-radius:36px;padding:clamp(28px,5vw,64px);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,64px);color:#fff}
@media (max-width:940px){.contact{grid-template-columns:minmax(0,1fr)}}
.contact h2{color:#fff;font-size:clamp(2.2rem,5vw,3.6rem)}
.contact-lede{margin-top:16px;color:rgba(255,255,255,.88);font-size:1.12rem;max-width:40ch}
.ways{margin-top:28px;display:grid;gap:12px}
.ways a{text-decoration:none;background:rgba(255,255,255,.12);border-radius:20px;padding:14px 18px;display:block}
.ways a:hover{background:rgba(255,255,255,.2)}
.ways .big{font-size:1.3rem;font-weight:800}
.ways small{display:block;color:rgba(255,255,255,.8);font-size:.92rem}
form{background:var(--surface);color:var(--ink);border-radius:28px;padding:clamp(20px,3vw,32px);display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:560px){form{grid-template-columns:1fr}}
.field{display:grid;gap:6px}
.field.full{grid-column:1/-1}
.field label{font-weight:700;font-size:.95rem;color:var(--head)}
input,select,textarea{font:inherit;color:var(--ink);background:var(--bg);border:2px solid var(--line);border-radius:14px;padding:12px 14px;width:100%}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary)}
textarea{min-height:120px;resize:vertical}
.consent{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;font-size:.9rem;color:var(--muted)}
.consent input{width:18px;height:18px;margin-top:3px;flex:none;accent-color:var(--k-blue)}
.consent a{color:var(--primary)}
.form-foot{grid-column:1/-1;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.form-msg{font-size:.93rem;color:var(--muted)}
.form-msg.err{color:var(--k-red)}
.form-msg.ok{color:#2E7D32}

/* Footer */
footer{padding:48px 0 56px;font-size:.95rem;color:var(--muted)}
.foot{display:flex;flex-wrap:wrap;gap:20px 40px;justify-content:space-between;align-items:center}
.foot nav{display:flex;flex-wrap:wrap;gap:6px}
.foot nav a{text-decoration:none;padding:6px 12px;border-radius:999px}
.foot nav a:hover{background:var(--tint);color:var(--head)}
.theme-toggle{font:inherit;font-weight:600;background:var(--tint);border:0;color:var(--head);border-radius:999px;padding:8px 16px;cursor:pointer}

@media (max-width:520px){
  .orders{grid-template-columns:minmax(0,1fr)}.orders .bon:nth-child(2){display:none}
  .screen{padding:16px;min-height:0}
  .site-info{grid-template-columns:1fr}
  .hero-panel,.it-panel,.contact{border-radius:28px}
}

/* Zwei Bereiche */
.intro{max-width:860px}
.intro .hero-lede{max-width:60ch}
.doors{margin-top:clamp(28px,4vw,44px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
@media (max-width:860px){.doors{grid-template-columns:minmax(0,1fr)}}
.door{display:flex;flex-direction:column;gap:14px;text-decoration:none;border-radius:32px;padding:clamp(24px,3.5vw,40px);color:#fff;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}
.door::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-80px;bottom:-110px;background:rgba(255,255,255,.08)}
.door:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.door-sw{background:var(--k-blue)}
.door-it{background:var(--k-dark)}
.door h2{color:#fff;font-size:clamp(1.6rem,2.8vw,2.2rem)}
.door p{color:rgba(255,255,255,.86);max-width:46ch}
.door-tag{align-self:flex-start;font-weight:800;font-size:.9rem;padding:6px 14px;border-radius:999px;background:rgba(255,255,255,.16)}
.door-it .door-tag{background:var(--k-yellow);color:#313D57}
.door-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.door-list li{font-weight:600;font-size:.92rem;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.12)}
.door-foot{margin-top:auto;padding-top:10px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;position:relative;z-index:1}
.door-go{font-weight:800;background:#fff;color:var(--k-dark);padding:11px 20px;border-radius:999px}
.door:hover .door-go{background:var(--k-yellow)}

.area{padding-top:clamp(40px,6vw,80px)}
.area-head{margin-bottom:clamp(24px,3vw,36px);max-width:820px}
.area-tag{display:inline-block;font-weight:800;font-size:.95rem;padding:7px 16px;border-radius:999px;margin-bottom:14px}
.area-sw .area-tag{background:var(--tint);color:var(--primary)}
.area-it .area-tag{background:var(--k-dark);color:#fff}
.area-head h2{font-size:clamp(1.9rem,4vw,3rem)}
.area-it{background:var(--tint);margin-top:clamp(40px,6vw,80px);padding-bottom:0}
.area-it .it-panel{margin-top:0}
.area-sw .hero-panel{margin-bottom:0}
.nav a.nav-sw{color:var(--primary)}
.it-h{color:#fff;font-size:clamp(1.5rem,2.6vw,2rem)}
.it-status{background:var(--surface);border-radius:28px;padding:22px;align-self:start;color:var(--ink)}
.it-status .person b{color:var(--head)}
.it-status .person small{color:var(--muted)}
.steps-it li::before{background:var(--k-dark);color:#fff}
.steps-it li:last-child::before{background:var(--k-yellow);color:#313D57}
.it-cta{margin-top:18px;background:var(--surface);border-radius:28px;padding:clamp(22px,3vw,32px);display:flex;gap:20px 40px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.it-cta h3{font-size:1.4rem;margin-bottom:6px}
.it-cta p{color:var(--muted);max-width:62ch}
.faq-area{margin-top:clamp(40px,5vw,64px)}
.faq-title{font-size:1.5rem;margin-bottom:8px}
.av-it{background:var(--k-dark)!important}
.av-sw{background:var(--k-blue)!important}
.prod.wide{grid-column:span 6}
.prod.wide .prod-foot .feat{flex:1}

/* Router */

.page{animation:in .3s ease-out}
.nav a[aria-current="page"]{color:var(--primary);background:var(--tint)}
.crumb{font-weight:700;color:var(--muted);text-decoration:none;display:inline-flex;gap:6px;align-items:center;margin-bottom:16px}
.crumb:hover{color:var(--head)}
.door-links{display:flex;flex-direction:column;gap:10px;margin-top:auto;position:relative;z-index:1}
.door-link{display:flex;justify-content:space-between;align-items:center;gap:12px;background:rgba(255,255,255,.12);border-radius:20px;padding:14px 18px;text-decoration:none;color:#fff}
.door-link:hover{background:rgba(255,255,255,.22)}
.door-link b{display:block;font-size:1.1rem}
.door-link small{color:rgba(255,255,255,.8)}
.door-link .go{flex:none;font-weight:800;background:#fff;color:var(--k-dark);padding:8px 14px;border-radius:999px;font-size:.92rem}
.door{cursor:default}
.door:hover{transform:none}
a.door{cursor:pointer}
a.door:hover{transform:translateY(-4px)}
.page-hero{padding:clamp(16px,3vw,32px) 0 clamp(40px,6vw,72px)}
.page-hero h1{font-size:clamp(2.4rem,5.4vw,4.2rem);font-weight:900;letter-spacing:-.035em;line-height:1.02;margin-top:14px}
.page-hero .hero-lede{max-width:52ch}
.bridge{margin-top:18px;border-radius:28px;padding:clamp(22px,3vw,32px);display:flex;gap:16px 36px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:var(--yellow-soft)}
.bridge h3{font-size:1.35rem;margin-bottom:6px}
.bridge p{color:var(--muted);max-width:60ch}
.who{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
@media (max-width:900px){.who{grid-template-columns:repeat(2,minmax(0,1fr))}}
.who div{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:20px}
.who .ic{font-size:1.6rem;display:block;margin-bottom:10px}
.who b{display:block;color:var(--head);font-size:1.08rem}
.who span{color:var(--muted);font-size:.95rem}
.inc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media (max-width:860px){.inc-grid{grid-template-columns:minmax(0,1fr)}}
.inc-grid div{background:var(--surface);border-radius:22px;padding:22px;border:1px solid var(--line)}
.inc-grid b{display:block;color:var(--head);font-size:1.1rem;margin-bottom:4px}
.inc-grid span{color:var(--muted);font-size:.97rem}
.plans.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.plans.two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px;margin:0 auto}
@media (max-width:900px){.plans.three,.plans.two{grid-template-columns:minmax(0,1fr)}}
.plan-c .link{color:var(--primary);font-weight:700;font-size:.95rem;text-decoration:none}
.plan-c.fav .link{color:var(--k-yellow)}
.web-demo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center}
@media (max-width:940px){.web-demo{grid-template-columns:minmax(0,1fr)}}
.suite-note{margin-top:18px;background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:22px 24px;display:flex;gap:14px 30px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.suite-note b{color:var(--head);font-size:1.1rem}
.suite-note p{color:var(--muted);max-width:64ch}
.feat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
@media (max-width:900px){.feat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.feat-grid div{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:20px}
.feat-grid .ic{width:40px;height:40px;border-radius:14px;background:var(--tint);display:grid;place-items:center;font-size:1.2rem;margin-bottom:12px}
.feat-grid b{display:block;color:var(--head)}
.feat-grid span{color:var(--muted);font-size:.95rem}
.faq-wrap{max-width:800px;margin:0 auto}
.fit-pkg a.btn{color:var(--on-primary);text-decoration:none}

/* IT-Seite: MSP-Muster */
.it-hero h1{font-size:clamp(2.3rem,4.8vw,3.9rem);font-weight:900;letter-spacing:-.03em;line-height:1.03;margin-top:14px}
.hero-ctas{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.btn-line{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.35)}
.btn-line:hover{background:rgba(255,255,255,.1)}
.trust{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media (max-width:980px){.trust{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.trust{grid-template-columns:minmax(0,1fr)}}
.trust li{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:16px;display:flex;gap:12px;align-items:flex-start;font-size:.93rem;color:var(--muted)}
.trust b{display:block;color:var(--head);font-size:1rem}
.t-ic{width:38px;height:38px;border-radius:12px;background:var(--tint);display:grid;place-items:center;flex:none;font-size:1.1rem}
.pains{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:900px){.pains{grid-template-columns:minmax(0,1fr)}}
.pain{border-radius:26px;overflow:hidden;border:1px solid var(--line);background:var(--surface)}
.p-q{padding:22px 22px 18px;font-size:1.25rem;font-weight:800;line-height:1.3;color:var(--head);background:var(--red-soft)}
.pain:nth-child(2) .p-q{background:var(--yellow-soft)}
.pain:nth-child(3) .p-q{background:var(--tint)}
.p-a{padding:18px 22px 22px;color:var(--ink);position:relative;padding-left:52px}
.p-a::before{content:"✓";position:absolute;left:20px;top:18px;width:22px;height:22px;border-radius:50%;background:var(--k-green);color:#fff;display:grid;place-items:center;font-size:.8rem;font-weight:900}
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.tab{font:inherit;font-weight:700;border:0;cursor:pointer;padding:11px 18px;border-radius:999px;background:var(--surface);color:var(--head);box-shadow:0 1px 0 var(--line)}
.tab[aria-selected="true"]{background:var(--k-dark);color:#fff}
.tab-panel{background:var(--surface);border-radius:28px;padding:clamp(22px,3vw,36px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 40px;animation:in .3s ease-out}
@media (max-width:860px){.tab-panel{grid-template-columns:minmax(0,1fr)}}
.tab-panel h3{font-size:1.5rem;margin-bottom:8px}
.tab-panel p{color:var(--muted)}
.tab-panel ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.tab-panel li{padding:12px 14px 12px 44px;background:var(--bg);border-radius:14px;position:relative}
.tab-panel li::before{content:"✓";position:absolute;left:14px;top:12px;width:20px;height:20px;border-radius:50%;background:var(--k-green);color:#fff;display:grid;place-items:center;font-size:.72rem;font-weight:900}
.svc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media (max-width:900px){.svc{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.svc{grid-template-columns:minmax(0,1fr)}}
.svc div{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:24px}
.s-ic{width:46px;height:46px;border-radius:15px;background:var(--tint);display:grid;place-items:center;font-size:1.3rem;margin-bottom:14px}
.svc b{display:block;color:var(--head);font-size:1.12rem;margin-bottom:4px}
.svc span:not(.s-ic){color:var(--muted);font-size:.97rem}
.cta-band{margin-top:18px;background:var(--k-blue);color:#fff;border-radius:24px;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;gap:14px 28px;flex-wrap:wrap}
.cta-band b{color:#fff}
.cta-band .btn{background:#fff;color:var(--k-dark)}
.cta-band .btn:hover{background:var(--k-yellow)}
.check-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,64px);align-items:start}
@media (max-width:900px){.check-grid{grid-template-columns:minmax(0,1fr)}}
.h-lg{font-size:clamp(2rem,4vw,3rem)}
.sub{margin-top:14px;color:var(--muted);font-size:1.12rem;max-width:44ch}
.big-person{margin-top:26px;background:var(--surface);border:1px solid var(--line)}
.big-person .avatar{width:60px;height:60px;font-size:1.15rem}
.big-person b{color:var(--head)}.big-person small{color:var(--muted)}
.big-person a{color:var(--primary);font-weight:700;text-decoration:none}
.itcheck{background:var(--surface);border-radius:28px;padding:clamp(20px,3vw,32px);box-shadow:var(--shadow)}
.itcheck .q{display:block;font-weight:700;color:var(--head);margin:18px 0 10px}
.itcheck .q:first-child{margin-top:0}
.range-row{display:flex;align-items:center;gap:16px}
.range-row input{flex:1;accent-color:var(--k-blue);padding:0;border:0;background:none}
.range-row output{min-width:56px;text-align:center;font-weight:900;font-size:1.4rem;color:var(--head);background:var(--tint);border-radius:14px;padding:6px 10px}
.seg{display:inline-flex;background:var(--bg);border-radius:999px;padding:4px;gap:4px;flex-wrap:wrap}
.seg button{font:inherit;font-weight:600;border:0;background:transparent;color:var(--head);padding:8px 16px;border-radius:999px;cursor:pointer}
.seg button[aria-pressed="true"]{background:var(--k-blue);color:#fff}
.multi{display:flex;flex-wrap:wrap;gap:8px}
.multi label{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.95rem;background:var(--bg);border-radius:999px;padding:8px 14px;cursor:pointer;color:var(--head)}
.multi input{width:16px;height:16px;padding:0;accent-color:var(--k-blue)}
.multi label:has(input:checked){background:var(--tint-2)}
@media (max-width:520px){.hero-ctas .btn{white-space:normal;text-align:center;width:100%}}

/* ===== IT-Seite: editorial, vollflächig ===== */
.itp{--navy:#313D57;--navy-2:#2A3449;--line-d:rgba(255,255,255,.14)}
.itp section{padding:clamp(64px,9vw,128px) 0}
.itp-hero{background:var(--navy);color:#DCE3F0;padding-top:clamp(20px,3vw,32px);margin-top:-8px}
.itp-hero .crumb{color:#9FB0CC}
.itp-hero .crumb:hover{color:#fff}
.itp-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(24px,5vw,72px);align-items:center;padding:clamp(24px,5vw,56px) 0 clamp(48px,7vw,88px)}
@media (max-width:980px){.itp-hero-grid{grid-template-columns:minmax(0,1fr)}}
.itp-kicker{color:var(--k-yellow);font-weight:700;font-size:1.02rem;margin-bottom:18px}
.itp-hero h1{color:#fff;font-size:clamp(2.6rem,6vw,5.2rem);font-weight:900;letter-spacing:-.04em;line-height:.98}
.itp-lead{margin-top:22px;font-size:1.18rem;line-height:1.6;color:#B8C4DA;max-width:46ch}
.itp-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:34px}
.itp-ctas .btn{border-radius:10px;padding:16px 26px;font-size:1.05rem}
.itp-phone{color:#fff;text-decoration:none;font-weight:800;font-size:1.2rem;line-height:1.2;border-left:2px solid var(--k-yellow);padding-left:14px}
.itp-phone span{display:block;font-weight:500;font-size:.85rem;color:#9FB0CC}
.itp-phone:hover{color:var(--k-yellow)}
.netmap{width:100%;height:auto;display:block}
.netmap .lines use{stroke:#5B7BBA;stroke-width:2;fill:none;stroke-dasharray:4 6}
.netmap .pulses circle{fill:#8FB3F0}
.netmap .pulses circle.y{fill:var(--k-yellow)}
.netmap .node rect{fill:#3B4866;stroke:#5B7BBA;stroke-width:1.5}
.netmap .node.strong rect{fill:var(--k-blue);stroke:#8FB3F0}
.netmap .node text{fill:#fff;font:700 15px var(--sans);text-anchor:middle}
.netmap .node.sm text{font-size:13px}
.netmap .tag rect{fill:#fff}
.netmap .tag text{font:700 12px var(--sans);fill:#313D57}
.netmap .tag.ok circle{fill:var(--k-green)}
.netmap .tag.warn rect{fill:var(--k-yellow)}
.netmap .tag.warn circle{fill:#B26A00}
.itp-strip{border-top:1px solid var(--line-d);background:var(--navy-2)}
.itp-strip .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:860px){.itp-strip .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}}
.itp-strip p{padding:22px 20px;color:#9FB0CC;font-size:.97rem;border-left:1px solid var(--line-d)}
.itp-strip p:first-child{border-left:0;padding-left:0}
@media (max-width:860px){.itp-strip p:nth-child(3){border-left:0;padding-left:0}}
.itp-strip b{color:#fff;display:block;font-size:1.05rem}
.itp-h2{font-size:clamp(2rem,4.4vw,3.4rem);font-weight:900;letter-spacing:-.03em;line-height:1.05;color:var(--head);max-width:22ch}
.itp-muted{margin-top:16px;color:var(--muted);font-size:1.12rem;max-width:36ch}
.itp-pains .itp-h2{max-width:26ch}
.itp-qa{margin-top:clamp(40px,5vw,64px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:2px solid var(--head)}
@media (max-width:900px){.itp-qa{grid-template-columns:minmax(0,1fr)}}
.itp-qa>div{padding:28px 28px 0 0}
.itp-qa>div+div{padding-left:28px;border-left:1px solid var(--line)}
@media (max-width:900px){.itp-qa>div+div{padding-left:0;border-left:0;border-top:1px solid var(--line)}}
.itp-qa .q{font-size:clamp(1.3rem,2vw,1.6rem);font-weight:800;line-height:1.25;color:var(--head);letter-spacing:-.01em}
.itp-qa .a{margin-top:16px;color:var(--muted);padding-left:16px;border-left:3px solid var(--k-green)}
.itp-services{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.itp-split{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,6vw,96px);align-items:start}
@media (max-width:900px){.itp-split{grid-template-columns:minmax(0,1fr)}}
.itp-sticky{position:sticky;top:110px}
@media (max-width:900px){.itp-sticky{position:static}}
.itp-sticky .btn{border-radius:10px}
.itp-list{list-style:none;margin:0;padding:0}
.itp-list li{display:grid;grid-template-columns:44px 1fr;gap:18px;padding:26px 0;border-top:1px solid var(--line)}
.itp-list li:first-child{border-top:2px solid var(--head)}
.itp-list svg{color:var(--k-blue);margin-top:2px}
.itp-list h3{font-size:1.35rem;letter-spacing:-.015em}
.itp-list p{margin-top:6px;color:var(--muted)}
.itp-tabs{display:flex;flex-wrap:wrap;gap:0 34px;margin-top:36px;border-bottom:2px solid var(--line)}
.itp-tabs .tab{background:none;box-shadow:none;border-radius:0;padding:14px 0;margin-bottom:-2px;border-bottom:3px solid transparent;color:var(--muted);font-size:1.08rem}
.itp-tabs .tab[aria-selected="true"]{background:none;color:var(--head);border-bottom-color:var(--k-blue)}
.itp-tabpanel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 64px;padding-top:36px;animation:in .3s ease-out}
@media (max-width:860px){.itp-tabpanel{grid-template-columns:minmax(0,1fr)}}
.itp-tabpanel h3{font-size:clamp(1.6rem,2.6vw,2.2rem);letter-spacing:-.02em}
.itp-tabpanel p{margin-top:12px;color:var(--muted);font-size:1.1rem;max-width:44ch}
.itp-tabpanel .btn{border-radius:10px}
.itp-tabpanel ul{list-style:none;margin:0;padding:0}
.itp-tabpanel li{padding:16px 0 16px 34px;border-bottom:1px solid var(--line);position:relative;font-weight:600;color:var(--head)}
.itp-tabpanel li::before{content:"";position:absolute;left:0;top:21px;width:18px;height:10px;border:solid var(--k-green);border-width:0 0 3px 3px;transform:rotate(-45deg) scale(.8)}
.itp-process{background:var(--tint)}
.itp-timeline{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;counter-reset:t;position:relative}
.itp-timeline::before{content:"";position:absolute;left:0;right:0;top:23px;height:2px;background:var(--k-light)}
@media (max-width:900px){.itp-timeline{grid-template-columns:minmax(0,1fr)}.itp-timeline::before{left:23px;right:auto;top:0;bottom:0;width:2px;height:auto}}
.itp-timeline li{counter-increment:t;position:relative}
@media (max-width:900px){.itp-timeline li{padding-left:70px}}
.itp-timeline li::before{content:counter(t);display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--k-blue);color:#fff;font-weight:900;font-size:1.2rem;margin-bottom:22px;position:relative;box-shadow:0 0 0 6px var(--tint)}
@media (max-width:900px){.itp-timeline li::before{position:absolute;left:0;top:0}}
.itp-timeline li:last-child::before{background:var(--k-yellow);color:#313D57}
.itp-timeline h3{font-size:1.3rem}
.itp-timeline p{margin-top:8px;color:var(--muted)}
.itp-dark{background:var(--navy);color:#DCE3F0}
.itp-person{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(32px,6vw,88px);align-items:center}
@media (max-width:860px){.itp-person{grid-template-columns:minmax(0,1fr)}}
.itp-portrait{aspect-ratio:4/5;border-radius:14px;background:linear-gradient(160deg,#5B7BBA,#406FBB 55%,#2A3449);display:grid;place-items:center;align-content:center;gap:8px;max-width:380px}
.itp-portrait span{font-size:clamp(4rem,9vw,7rem);font-weight:900;color:rgba(255,255,255,.92);letter-spacing:-.04em;line-height:1}
.itp-portrait small{color:rgba(255,255,255,.7);font-weight:600}
.itp-check{margin-top:clamp(64px,9vw,120px);padding-top:clamp(48px,6vw,80px);border-top:1px solid var(--line-d);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,72px);align-items:start}
@media (max-width:900px){.itp-check{grid-template-columns:minmax(0,1fr)}}
.itp .itcheck{border-radius:14px;box-shadow:none;background:#3B4866;color:#fff}
.itp .itcheck .q{color:#fff}
.itp .range-row output{background:var(--navy);color:#fff}
.itp .seg{background:var(--navy)}
.itp .seg button{color:#DCE3F0}
.itp .multi label{background:var(--navy);color:#DCE3F0}
.itp .multi label:has(input:checked){background:var(--k-blue);color:#fff}
.itp .itcheck .btn{border-radius:10px}
.itp-faq .faq details{background:none;border:0;border-radius:0;border-bottom:1px solid var(--line);padding:0}
.itp-faq .faq details:first-child{border-top:2px solid var(--head)}
.itp-faq .faq{gap:0}
.itp-faq .faq summary{font-size:1.15rem;padding:22px 48px 22px 0}
.itp-faq .faq summary::after{background:none;border:1.5px solid var(--line)}

/* ===== Editorial-Stil für alle Seiten ===== */
.btn{border-radius:10px}
.top .btn{border-radius:999px}
.ed-sec{padding:clamp(64px,9vw,128px) 0}
.ed-white{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ed-tint{background:var(--tint)}
.ed-kicker{color:var(--primary)}
.ed-hero{padding:clamp(48px,8vw,120px) 0 clamp(40px,6vw,80px)}
.ed-hero h1{font-size:clamp(2.8rem,7.4vw,6.6rem);font-weight:900;letter-spacing:-.045em;line-height:.95;color:var(--head)}
.ed-lead{margin-top:26px;font-size:clamp(1.15rem,1.6vw,1.35rem);color:var(--muted);max-width:52ch}
.ed-doors{display:grid;grid-template-columns:1fr 1fr}
@media (max-width:900px){.ed-doors{grid-template-columns:1fr}}
.ed-door{padding:clamp(40px,6vw,88px) clamp(20px,5vw,72px);color:#DCE3F0;display:flex}
.ed-door-sw{background:var(--k-blue);justify-content:flex-end}
.ed-door-it{background:#313D57}
.ed-door-in{width:100%;max-width:560px;display:flex;flex-direction:column}
.ed-door-sw .itp-kicker{color:#fff;opacity:.85}
.ed-door h2{color:#fff;font-size:clamp(1.9rem,3.4vw,2.8rem);font-weight:900;letter-spacing:-.03em;line-height:1.05}
.ed-door-p{margin-top:14px;color:rgba(255,255,255,.82);font-size:1.1rem;max-width:40ch}
.ed-door-in .ed-row:first-of-type{margin-top:36px}
.ed-row{display:grid;grid-template-columns:1fr auto 28px;gap:16px;align-items:center;padding:20px 0;border-top:1px solid rgba(255,255,255,.22);text-decoration:none;color:rgba(255,255,255,.8)}
.ed-row:last-child{border-bottom:1px solid rgba(255,255,255,.22)}
.ed-row b{display:block;color:#fff;font-size:1.3rem;letter-spacing:-.01em}
.ed-price{font-weight:700;color:#fff}
.ed-arrow{width:28px;height:28px;border-radius:50%;background:#fff;position:relative;transition:transform .2s}
.ed-arrow::after{content:"";position:absolute;left:9px;top:10px;width:7px;height:7px;border:solid #313D57;border-width:2px 2px 0 0;transform:rotate(45deg)}
.ed-row:hover .ed-arrow{transform:translateX(4px);background:var(--k-yellow)}
.ed-row:hover b{text-decoration:underline;text-underline-offset:4px}
.ed-quote{font-size:clamp(1.5rem,2.6vw,2.1rem);font-weight:800;line-height:1.2;color:var(--head);letter-spacing:-.02em;padding-bottom:24px;border-bottom:2px solid var(--head)}
.ed-body{margin-top:24px;font-size:1.12rem;color:var(--ink);max-width:56ch}
.ed-team{margin-top:36px;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ed-portrait{aspect-ratio:4/5;border-radius:12px;display:grid;place-items:center;margin-bottom:14px}
.ed-portrait.sw{background:linear-gradient(160deg,#5B7BBA,#406FBB)}
.ed-portrait.it{background:linear-gradient(160deg,#406FBB,#313D57)}
.ed-portrait span{font-size:clamp(2.6rem,5vw,4rem);font-weight:900;color:rgba(255,255,255,.9);letter-spacing:-.04em}
.ed-team b{display:block;color:var(--head);font-size:1.12rem}
.ed-team small{color:var(--muted)}
.ed-addr{margin-top:24px;padding-left:14px;border-left:3px solid var(--k-red);font-weight:700;color:var(--head)}
.ed-blue{background:var(--k-blue)}
.ed-blue .itp-lead{color:rgba(255,255,255,.85)}
.ed-blue .crumb{color:rgba(255,255,255,.75)}
.ed-blue .itp-strip{background:#3763AA;border-top-color:rgba(255,255,255,.2)}
.ed-blue .itp-strip p{color:rgba(255,255,255,.78);border-left-color:rgba(255,255,255,.2)}
.ed-blue .itp-phone span{color:rgba(255,255,255,.75)}
.ed-blue .device{box-shadow:0 40px 70px -30px rgba(20,30,60,.6)}
.ed-pick{margin-top:30px;font-weight:700;color:#fff}
.ed-chips{margin-top:10px}
.ed-chips .chip{background:rgba(255,255,255,.14);color:#fff;box-shadow:none;border-radius:10px;padding:10px 16px}
.ed-chips .chip:hover{background:rgba(255,255,255,.24)}
.ed-chips .chip[aria-pressed="true"]{background:#fff;color:#313D57}
.ed-fit{margin-top:14px;color:rgba(255,255,255,.85);max-width:48ch;min-height:3.2em}
.ed-light{background:var(--tint)}
.ed-light h1{color:var(--head)!important}
.ed-light .itp-kicker{color:var(--primary)}
.ed-light .itp-lead{color:var(--muted)}
.ed-light .crumb{color:var(--muted)}
.ed-light .itp-phone{color:var(--head)}
.ed-light .itp-phone span{color:var(--muted)}
.ed-light .itp-strip{background:var(--surface);border-top:1px solid var(--line)}
.ed-light .itp-strip p{color:var(--muted);border-left-color:var(--line)}
.ed-light .itp-strip b{color:var(--head)}
.itp-hero h1{color:#fff}
.ed-note{margin-top:48px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:14px 28px;flex-wrap:wrap}
.ed-note p{color:var(--muted);max-width:70ch}
.ed-note b{color:var(--head)}
.ed-who{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:900px){.ed-who{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.ed-who{grid-template-columns:minmax(0,1fr)}}
@media (max-width:900px) and (min-width:561px){.ed-who>div:nth-child(3){padding-left:0;border-left:0}.ed-who>div+div{border-top:0}}
.ed-facts{margin-top:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:2px solid var(--head)}
@media (max-width:860px){.ed-facts{grid-template-columns:minmax(0,1fr)}}
.ed-facts p{padding:22px 24px 0 0;color:var(--muted)}
.ed-facts p+p{padding-left:24px;border-left:1px solid var(--line-2,rgba(0,0,0,.08))}
@media (max-width:860px){.ed-facts p+p{padding-left:0;border-left:0}}
.ed-facts b{display:block;color:var(--head);margin-bottom:4px}
.ed-bridge{margin-top:28px;display:grid;grid-template-columns:1fr 28px;gap:20px;align-items:center;padding:26px 28px;background:#313D57;color:rgba(255,255,255,.82);border-radius:12px;text-decoration:none}
.ed-bridge b{display:block;color:#fff;font-size:1.3rem;margin-bottom:4px}
.ed-bridge:hover .ed-arrow{transform:translateX(4px);background:var(--k-yellow)}
/* Preiskarten schärfer */
.plan-c{border-radius:14px;border:1px solid var(--line)}
.plan-c.fav{transform:none;border-color:transparent;box-shadow:none;background:#313D57}
.ribbon{border-radius:6px}
.plan-c .btn{border-radius:10px}
.inc li::before{border-radius:4px}
/* Kontakt vollflächig */
.ed-contact{background:var(--k-blue);padding:clamp(64px,9vw,120px) 0!important}
.ed-contact-in{background:none;border-radius:0;padding:0}
.ed-contact form{border-radius:14px}
.ed-contact .ways a{border-radius:10px;background:rgba(255,255,255,.1)}
.ed-contact input,.ed-contact select,.ed-contact textarea{border-radius:8px}
footer{border-top:1px solid var(--line)}
.itp-portrait.pg{background:linear-gradient(160deg,#6E8FD0,#406FBB 55%,#313D57)}
.ed-sec.itp-dark{background:#313D57;color:#DCE3F0;border:0}

/* Standardseiten (Impressum, Datenschutz, sonstige) */
.legal{padding:clamp(40px,6vw,80px) 0 clamp(64px,8vw,120px)}
.legal .wrap{max-width:820px}
.legal h1{font-size:clamp(2.2rem,5vw,3.6rem);font-weight:900;letter-spacing:-.03em;margin-bottom:28px}
.legal-content h2{font-size:1.6rem;margin:40px 0 12px}
.legal-content h3{font-size:1.25rem;margin:28px 0 10px}
.legal-content p,.legal-content li{color:var(--ink);margin:0 0 14px}
.legal-content a{color:var(--primary)}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.skip-link{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--surface);padding:10px 16px;border-radius:8px}
.skip-link:focus{left:12px}
