/* Self-hosted Lato (latin / latin-ext, 400 and 700). No external font host. */
@font-face{
  font-family:"Lato";
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url("../fonts/lato-400-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:"Lato";
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url("../fonts/lato-400-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:"Lato";
  font-style:normal;
  font-weight:700;
  font-display:swap;
  src:url("../fonts/lato-700-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:"Lato";
  font-style:normal;
  font-weight:700;
  font-display:swap;
  src:url("../fonts/lato-700-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;
}
:root{
  --surface:#FFFFFF;
  --surface-soft:#F7F6F3;
  --text:#202020;
  --text-muted:#595959;
  --border:#E6E3DE;
  --action:#C52922;
  --action-hover:#AD211B;
  --content-max:1240px;
  --radius-control:12px;
  --radius-card:16px;
  --section-space:clamp(3.5rem, 7vw, 7rem);
  --space-16:1rem;
  --space-24:1.5rem;
  --space-32:2rem;
  --space-48:3rem;
  --bg:var(--surface);
  --card:var(--surface);
  --card2:var(--surface-soft);
  --line:var(--border);
  --muted:var(--text-muted);
  --brand:#E21F18;
  --brand-hover:var(--action-hover);
  --premium:#6B1F2A; --premium2:#8F3A45; --premium-dark:#4E1520;
  --budget:#2F6FAE; --budget2:#4A8BC0;
  --ok:#2E8B57; --danger:#C0392B;
  --radius:var(--radius-card);
  --max:var(--content-max);
  --accent:var(--action);
  --accent2:var(--premium2);
  --font-sans:"Lato",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-display:var(--font-sans);
  --header-offset:4.5rem;
}
@media (min-width:960px){
  :root{--header-offset:5.25rem}
}
html{scroll-padding-top:calc(var(--header-offset) + .75rem)}
body.linie-budget{ --accent2:var(--budget2); }
*{box-sizing:border-box}
body{
  margin:0;
  font-family:var(--font-sans);
  font-size:clamp(1.0625rem, 1.02rem + 0.18vw, 1.125rem);
  line-height:1.6;
  background:var(--surface);
  color:var(--text);
  min-height:100vh;
}
a{color:inherit;text-decoration:none}
.wrap{
  width:100%;
  max-width:var(--content-max);
  margin-inline:auto;
  padding-inline:clamp(1.25rem, 3vw, 3rem);
}
.site-header{
  position:sticky;top:0;z-index:30;
  background:#fff;
  border-bottom:1px solid transparent;
}
.site-header.is-scrolled{border-bottom-color:var(--border)}
.nav{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;
  min-height:calc(var(--header-offset) - 1px);
  padding-block:0;
  position:static;background:transparent;border:0;box-shadow:none;backdrop-filter:none;
}
.nav .brand,.brand{font-weight:700;letter-spacing:.02em;display:inline-flex;align-items:center;gap:.55rem;font-family:var(--font-sans);margin-right:auto}
.logo{display:block;height:44px;width:auto;max-width:none;object-fit:contain}
.nav-toggle{
  display:none;align-items:center;justify-content:center;
  width:2.75rem;height:2.75rem;padding:0;flex:0 0 auto;
  border:1px solid var(--border);border-radius:var(--radius-control);
  background:#fff;color:var(--text);cursor:pointer;
}
.nav-toggle-bars,.nav-toggle-bars::before,.nav-toggle-bars::after{
  display:block;width:1.15rem;height:2px;background:currentColor;border-radius:1px;position:relative;
}
.nav-toggle-bars::before,.nav-toggle-bars::after{content:"";position:absolute;left:0}
.nav-toggle-bars::before{top:-6px}
.nav-toggle-bars::after{top:6px}
.site-header.is-open .nav-toggle-bars{background:transparent}
.site-header.is-open .nav-toggle-bars::before{top:0;transform:rotate(45deg)}
.site-header.is-open .nav-toggle-bars::after{top:0;transform:rotate(-45deg)}
.nav-toggle:focus-visible,.nav a:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.site-nav{display:flex;align-items:center;gap:1.15rem;flex-wrap:wrap;font-size:.875rem;color:var(--muted)}
.site-nav a:not(.btn){
  display:inline-flex;align-items:center;min-height:2.75rem;
  color:var(--text-muted);font-weight:700;
}
.site-nav a:not(.btn):hover,.site-nav a:not(.btn).active{color:var(--text)}
.site-nav a:not(.btn).active{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.4em;text-decoration-color:var(--action)}
.nav-cta{margin-left:.35rem}
.site-nav a.btn.active{box-shadow:inset 0 -3px 0 rgba(255,255,255,.92)}
@media (min-width:960px){
  .logo{height:56px}
  .nav{flex-wrap:nowrap}
  .nav .brand{margin-right:0}
  .site-nav{margin-left:auto;flex-wrap:nowrap}
  .site-nav a.nav-updates{display:none}
}
@media (max-width:959px){
  html.js .nav-toggle{display:inline-flex}
  html.js .site-nav{display:none}
  html.js .site-header.is-open .site-nav{
    display:flex;flex-direction:column;align-items:stretch;gap:.15rem;
    flex:1 0 100%;padding:0 0 1rem;
  }
  html.js .site-header.is-open .nav-cta{margin:.75rem 0 0;justify-content:center}
  html.no-js .site-nav{
    flex:1 0 100%;flex-direction:column;align-items:flex-start;padding:0 0 .75rem;
  }
  html.no-js .nav-cta{margin-top:.5rem}
}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  min-height:3.125rem;padding:.7rem 1.5rem;
  border-radius:var(--radius-control);border:1px solid transparent;
  background:transparent;color:var(--text);
  font-family:inherit;font-size:1rem;font-weight:700;line-height:1.2;
  text-decoration:none;cursor:pointer;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}
.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}
.btn-premium,.btn-primary,.btn-budget-solid{
  background:var(--action);border-color:var(--action);color:#fff;
}
.btn-premium:hover,.btn-primary:hover,.btn-budget-solid:hover{
  background:var(--action-hover);border-color:var(--action-hover);color:#fff;
}
.btn-ghost,.btn-budget{
  background:transparent;border-color:#8C877F;color:var(--text);
}
.btn-ghost:hover,.btn-budget:hover{
  background:var(--surface-soft);border-color:#5C5852;color:var(--text);
}
.btn:focus-visible{outline:2px solid var(--text);outline-offset:3px}
@media (prefers-reduced-motion:no-preference){
  .btn:hover:not(:disabled){transform:translateY(-1px)}
}
.badge-proto{font-size:.8125rem;background:#FCE8E7;color:var(--brand);padding:.2rem .45rem;border-radius:6px;margin-left:.5rem;vertical-align:middle;font-family:var(--font-sans);letter-spacing:.04em}
body.linie-budget .badge-proto{background:#E8F1F8;color:var(--budget)}
.hero{padding:var(--section-space) 0 calc(var(--section-space) / 2);margin:0}
.hero .eyebrow,.eyebrow{color:var(--brand);font-size:.875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.75rem}
.eyebrow-premium{color:var(--premium)}
.eyebrow-budget{color:var(--budget)}
h1{font-weight:700;font-size:clamp(1.75rem, 1.2rem + 1.5vw, 2.25rem);line-height:1.15;letter-spacing:-.02em;text-wrap:balance;margin:0 0 var(--space-16)}
.hero h1,.not-found h1{
  font-size:clamp(2.25rem, 1.15rem + 3.6vw, 4.25rem);
  line-height:1.08;letter-spacing:-.022em;
  margin:0 0 var(--space-24);max-width:16em;
}
.hero p.lead,.lead,.sub,.section > .list{
  font-size:inherit;color:var(--muted);max-width:65ch;margin:0 0 var(--space-24);line-height:1.6;
}
.hero-cta{display:flex;gap:.75rem;flex-wrap:wrap}
.paths{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-24);padding:0}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);padding:var(--space-24);display:flex;flex-direction:column;box-shadow:none}
.card h2,.card h3{margin:0 0 var(--space-16);font-size:clamp(1.3125rem, 1.22rem + 0.25vw, 1.5rem);line-height:1.3;letter-spacing:-.01em;text-wrap:balance;font-weight:700}
.card p{color:var(--muted);margin:0 0 1rem}
.card ul{margin:0 0 1.1rem;padding-left:1.1rem;color:var(--muted)}
.card li{margin:.3rem 0}
.tag{display:inline-block;font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.25rem .55rem;border-radius:999px;margin-bottom:.8rem}
.tag-p{background:rgba(107,31,42,.1);color:var(--premium)}
.tag-b{background:rgba(47,111,174,.12);color:var(--budget)}
.tag-neutral{background:#fff;color:var(--muted);border:1px solid var(--line)}
.section{
  padding-top:calc(var(--section-space) / 2);
  padding-bottom:calc(var(--section-space) / 2);
  margin:0;
  border-top:0;
}
.section > h2,#inklusive > h2,.cta-band h2,.contact-success h2,.contact-main > h2{
  margin:0 0 var(--space-16);
  font-size:clamp(1.75rem, 1.15rem + 2vw, 2.625rem);
  font-weight:700;line-height:1.12;letter-spacing:-.02em;text-wrap:balance;
}
.section .sub{margin:0 0 var(--space-24)}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-24)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-24)}
.mini{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);padding:var(--space-24);box-shadow:none}
a.mini{display:block}
a.mini:hover{border-color:#8C877F}
.mini h3,.step h3,.rev-card h3,.upgrade h3,.empty-title,.line-card h3,.product-card h3,.ablauf-steps h3,.sample-group-title{
  margin:0 0 var(--space-16);
  font-size:clamp(1.3125rem, 1.22rem + 0.25vw, 1.5rem);
  font-weight:700;line-height:1.3;letter-spacing:-.01em;text-wrap:balance;
}
.mini p{margin:0;color:var(--muted);font-size:.92rem}
.note{margin:var(--space-24) 0;padding:var(--space-16) 1.1rem;border-left:3px solid var(--premium);background:var(--surface-soft);color:var(--muted);font-size:.9375rem}
.note-budget{border-left-color:var(--budget)}
.ki-transfer-notice{margin:0 0 1rem;padding:.9rem 1rem;border-left:3px solid var(--budget);background:#E8F1F8;color:var(--text);font-size:.9375rem;line-height:1.5}
.ki-transfer-notice a{font-weight:700}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-24);counter-reset:s}
.step{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);padding:var(--space-24);position:relative;box-shadow:none}
.step::before{counter-increment:s;content:counter(s);display:inline-flex;width:1.6rem;height:1.6rem;align-items:center;justify-content:center;border-radius:999px;background:rgba(107,31,42,.12);color:var(--premium);font-size:.8125rem;font-weight:700;margin-bottom:.6rem}
.step p{margin:0;color:var(--muted);font-size:.9375rem}
.proof{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.25rem}
.chip{font-size:.875rem;padding:.45rem .75rem;border-radius:999px;border:1px solid var(--line);background:var(--surface-soft);color:var(--muted)}
.proof-line .chip{background:transparent;border:0;border-radius:0;padding:0}
.paths-open > .card,
.cols-open > .mini{background:transparent;border:0;border-radius:0;padding:0;box-shadow:none}
.paths-open > .card > .btn,
.cols-open .btn{align-self:flex-start;width:auto}
.chip strong{color:var(--premium);font-weight:700}
.cta-band{
  margin:0;
  padding:calc(var(--section-space) / 2) 0;
  border:0;border-radius:0;background:transparent;box-shadow:none;
}
.cta-band.budget{border:0;background:transparent}
.cta-band p{margin:0 0 var(--space-24);color:var(--muted);max-width:65ch}
.limits{list-style:none;margin:0;padding:0;display:grid;gap:.65rem}
.limits li{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1rem 1.1rem;display:grid;grid-template-columns:auto 1fr;gap:.75rem;align-items:start}
.limits .mark{font-size:.8125rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.2rem .45rem;border-radius:6px;background:rgba(47,111,174,.12);color:var(--budget)}
.limits strong{display:block;margin-bottom:.2rem}
.limits span{color:var(--muted);font-size:.92rem}
.upgrade{padding:var(--space-24);border-radius:var(--radius-card);border:1px solid var(--line);background:var(--surface);display:flex;flex-wrap:wrap;gap:var(--space-24);align-items:center;justify-content:space-between;box-shadow:none}
.upgrade p{margin:0;color:var(--muted);max-width:48ch}
.upgrade h3{color:var(--text)}
.price-hint{font-size:.82rem;color:var(--muted);margin:0 0 1rem}
.price-hint strong{color:var(--text)}
.price-block{margin:0}
.price-line{margin:.45rem 0 0}
.price-line .tag{margin-bottom:0}
.price-gross{
  margin:0;
  font-family:var(--font-display);
  font-weight:700;
  font-size:1.7rem;
  line-height:1.15;
  letter-spacing:-.02em;
  color:var(--text);
}
.price-ab{font-size:.62em;font-weight:700;letter-spacing:.02em;margin-right:.15rem}
.price-vat{margin:.2rem 0 0;font-size:.95rem;font-weight:600;color:var(--text)}
.price-net{margin:.12rem 0 0;font-size:.82rem;color:var(--muted)}
.price-disclaimer{margin:.5rem 0 0;font-size:.8125rem;line-height:1.45;color:var(--muted);max-width:36ch}
.price-missing{margin:.4rem 0 0;color:var(--muted);font-size:.88rem}
.price-pair{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin:0 0 1rem}
.price-single{margin:0 0 1rem}
.price-copy{margin:0 0 .7rem;color:var(--muted);font-size:.9rem}
.price-includes{margin:0 0 .9rem;padding-left:1.1rem;color:var(--muted);font-size:.9rem}
.price-includes li{margin:.25rem 0}
.price-addons{margin-top:.75rem;padding-top:.7rem;border-top:1px solid var(--line)}
.price-addons-label{margin:0 0 .35rem;font-size:.8125rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.price-addon{margin-top:.55rem}
a.fn-ref{color:var(--brand);font-weight:700;text-decoration:none;margin-left:.12rem}
a.fn-ref:hover{text-decoration:underline}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.price-footnotes{
  margin:var(--space-32) 0 0;
  padding:var(--space-24);
  border-radius:var(--radius-card);
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.22);
  color:#F3F1EE;
  font-size:.9375rem;
  line-height:1.55;
}
.price-footnotes p{margin:0}
.price-footnotes ol{margin:.75rem 0 0;padding-left:1.35rem}
.price-footnotes li{margin:.35rem 0}
.price-running{
  position:fixed;left:0;right:0;bottom:0;z-index:40;
  background:rgba(255,255,255,.98);
  border-top:1px solid var(--line);
}
.price-running[hidden]{display:none !important}
.price-running-inner{
  max-width:var(--content-max);margin:0 auto;padding:.7rem clamp(1rem, 3vw, 3rem) .85rem;
  display:flex;flex-direction:column;gap:.4rem;
}
.price-running-top{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.55rem 1rem;
}
.price-running-cluster{
  display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:.55rem .75rem;
  min-width:min(100%, 12rem);flex:1 1 12rem;margin-left:auto;
}
#priceRunningBody{min-width:0;flex:0 1 auto}
.price-running-action{flex:0 0 auto}
.price-running-action:empty{display:none}
.price-running-action .btn{white-space:nowrap}
.price-running-note{width:100%}
.price-running-note:empty{display:none}
.price-running-kicker{
  margin:0;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);
}
.price-running .price-block{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-end;gap:.2rem .75rem;min-width:0}
.price-running .price-gross{font-size:1.45rem}
.price-running .price-vat,.price-running .price-net,.price-running .price-disclaimer,.price-running .price-line{margin:0}
.price-running .price-line{display:none}
.price-running-note .price-disclaimer{max-width:none;margin:0}
body.has-price-running{padding-bottom:11rem}
@media (max-width:420px){
  body.has-price-running{padding-bottom:14rem}
}
.summary-price{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}
@media (max-width:640px){
  .price-pair{grid-template-columns:1fr}
}
.actions{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:auto}
.cta-row{display:flex;gap:var(--space-16);flex-wrap:wrap;margin:0;padding:calc(var(--section-space) / 2) 0;border-top:0}
.revenue{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}
.rev-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);padding:var(--space-24);box-shadow:none}
.rev-card .label{font-size:.875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--brand);margin-bottom:.5rem}
.rev-card p{margin:0;color:var(--muted)}
.list{margin:0;padding-left:1.15rem;color:var(--muted)}
.list li{margin:.4rem 0}
.link-brand{color:var(--action);text-decoration:underline;text-underline-offset:.15em}
.link-brand:hover{color:var(--action-hover)}
.link-brand:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.site-footer{margin-top:calc(var(--section-space) / 2);padding:0;color:#C8C8C8;font-size:.9375rem;background:#1A1A1A;border-top:none}
.footer-accent{height:2px;background:var(--action)}
.footer-inner{padding-block:var(--space-48) 1.75rem}
.footer-cta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-32);flex-wrap:wrap;padding:0;margin:0 0 var(--space-48);border:0;border-radius:0;background:transparent;box-shadow:none}
.footer-cta-eyebrow{margin:0 0 .35rem;font-size:.875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#F5A39F}
.footer-cta h2{margin:0 0 var(--space-16);font-size:clamp(1.75rem, 1.15rem + 2vw, 2.625rem);font-weight:700;color:#FFF;line-height:1.12;letter-spacing:-.02em;text-wrap:balance;max-width:16em}
.footer-cta-copy p:last-child{margin:0;color:#B8B8B8;max-width:48ch;font-size:.92rem}
.footer-cta-copy{min-width:0;flex:1 1 18rem}
.footer-cta-actions{display:flex;gap:var(--space-16);flex-wrap:wrap;flex:1 1 12rem;min-width:0;max-width:100%}
.btn-footer-ghost{border-color:rgba(255,255,255,.55);color:#FFF;background:transparent}
.btn-footer-ghost:hover{border-color:#FFF;color:#FFF;background:rgba(255,255,255,.06)}
.site-footer .btn:focus-visible{outline-color:#fff}
.footer-grid{display:grid;grid-template-columns:1.35fr .9fr .9fr .9fr;gap:2rem 1.5rem;padding-bottom:1.85rem;border-bottom:1px solid rgba(255,255,255,.1)}
.footer-brand .footer-logo{display:inline-block;margin-bottom:1rem}
.footer-brand .footer-logo img{display:block;height:52px;width:auto}
.footer-tagline{margin:0 0 1rem;max-width:30ch;line-height:1.55;color:#B0B0B0}
.footer-bau{margin:0;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.82rem;color:#9A9A9A}
.site-footer .badge-proto{margin-left:0;background:rgba(226,31,24,.18);color:#FF8E88}
.footer-col h3{margin:0 0 .85rem;font-size:.8125rem;letter-spacing:.1em;text-transform:uppercase;color:#FFF;position:relative;padding-bottom:.55rem;font-weight:700}
.footer-col h3::after{content:"";display:block;width:1.4rem;height:2px;margin-top:.55rem;background:var(--brand);border-radius:2px}
.footer-col ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.footer-col a{color:#C8C8C8;transition:color .15s ease}
.footer-col a:hover{color:#FFF}
.footer-address{color:#A8A8A8;line-height:1.45}
.footer-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding-top:1.2rem}
.footer-note,.footer-meta{margin:0;font-size:.82rem;color:#8F8F8F}
@media (max-width:800px){
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-brand{grid-column:1 / -1}
}
@media (max-width:520px){
  .footer-grid{grid-template-columns:1fr}
}
.site-footer.is-compact{margin-top:var(--space-48)}
.site-footer.is-compact .footer-inner{padding-block:var(--space-32) 1.25rem}
.site-footer.is-compact .footer-grid{gap:1.25rem 1.5rem;padding-bottom:1.15rem}
.site-footer.is-compact .footer-brand .footer-logo{margin-bottom:.65rem}
.site-footer.is-compact .footer-brand .footer-logo img{height:40px}
.site-footer.is-compact .footer-tagline{margin-bottom:0;font-size:.875rem}
.back{font-size:.88rem;color:var(--muted)}
.back:hover{color:var(--text)}
.alert{padding:1rem 1.1rem;border-radius:10px;margin:1rem 0;font-size:.92rem}
.alert-error{background:#FCE8E7;border:1px solid #F5C2C0;color:var(--danger)}
.alert-ok{background:#E8F6EE;border:1px solid #B8E0C8;color:var(--ok)}

/* Konfigurator */
.progress-wrap{
  position:sticky;top:var(--header-offset);z-index:20;
  background:rgba(255,255,255,.96);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
  margin-inline:calc(-1 * clamp(1.25rem, 3vw, 3rem));
  padding:.85rem clamp(1.25rem, 3vw, 3rem) .95rem;
}
.progress-meta{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.55rem;flex-wrap:wrap}
.progress-meta .step-label{margin:0}
.step-count{font-size:.875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}
.progress-meta .linie-pill{
  font-size:.8125rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
  padding:.35rem .7rem;border-radius:999px;
  background:rgba(107,31,42,.1);color:var(--premium);
}
body.linie-budget .progress-meta .linie-pill{background:rgba(47,111,174,.12);color:var(--budget)}
.progress-track{height:4px;background:var(--line);border-radius:99px;overflow:hidden}
.progress-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--accent),var(--accent2));border-radius:99px;transition:width .35s ease}
.steps-dots{list-style:none;display:flex;gap:.5rem;margin:0 0 .7rem;padding:0;flex-wrap:wrap}
.dot{font-size:.875rem;font-weight:700;color:var(--text-muted);padding:.35rem .7rem;border-radius:999px;border:1px solid transparent;line-height:1.3}
.dot.active{color:var(--text);border-color:var(--action);background:var(--surface-soft)}
.dot.done{color:var(--text)}
@media (max-width:719px){
  .steps-dots{flex-wrap:nowrap;gap:.4rem}
  .dot{
    position:relative;flex:1 1 0;min-width:0;height:.45rem;padding:0;
    border:0;border-radius:99px;background:var(--border);overflow:hidden;color:transparent;
  }
  .dot.done{background:#8C877F}
  .dot.active{background:var(--action);border:0}
  .dot-label{
    position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
    clip:rect(0,0,0,0);white-space:nowrap;border:0;
  }
}
.banner{margin:1.1rem 0 0;padding:.7rem .9rem;border-radius:var(--radius-control);font-size:.875rem;color:var(--muted);background:var(--surface-soft);border:1px dashed var(--line)}
.banner strong{color:var(--premium)}
.panel{display:none}
.panel.active{display:block;padding-top:var(--space-32)}
@media (prefers-reduced-motion:no-preference){
  .panel.active{animation:fade .18s ease}
}
@keyframes fade{from{opacity:0}to{opacity:1}}
/* Schritttitel und Schrittnamen sind keine Bedienelemente. Der Klickrahmen bleibt auf Buttons, Links und Feldern. */
.panel h1:focus,
.panel h2:focus,
.progress-wrap .step-label:focus,
.progress-wrap .step-count:focus,
.steps-dots:focus,
.dot:focus,
.dot-label:focus{outline:none}
.panel h1,.panel h2{scroll-margin-top:calc(var(--header-offset) + 8.5rem)}
.choice{
  --mark-x:1.1rem;
  --mark-y:1.65rem;
  position:relative;
  background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-card);
  padding:1.5rem 1.5rem 1.5rem 3.35rem;cursor:pointer;text-align:left;color:inherit;font:inherit;
  box-shadow:none;
  transition:border-color .18s ease,background-color .18s ease;width:100%;min-width:0;
}
.choice::before{
  content:"";position:absolute;left:var(--mark-x);top:var(--mark-y);width:1.25rem;height:1.25rem;box-sizing:border-box;
  border:2px solid #8C877F;border-radius:50%;background:#fff;pointer-events:none;
}
.choice.selected::after{
  content:"";position:absolute;left:var(--mark-x);top:var(--mark-y);width:.34rem;height:.55rem;margin:0;
  border:solid #fff;border-width:0 2px 2px 0;transform:translate(.40rem,.12rem) rotate(45deg);pointer-events:none;
}
.choice:hover{border-color:#8C877F}
.choice.selected,.choice.selected:hover{border-color:var(--action);background:var(--surface-soft);box-shadow:none}
.choice.selected::before,.choice.selected:hover::before{border-color:var(--action);background:var(--action)}
.choice .tag{margin-bottom:.55rem}
.choice h3{margin:0 0 .3rem;font-size:clamp(1.3125rem, 1.22rem + 0.25vw, 1.5rem);line-height:1.3;letter-spacing:-.01em;text-wrap:balance}
.choice p{margin:0;color:var(--muted);font-size:.88rem}
div.choice:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.choice .price-block{margin-top:.85rem}
.choice .price-gross{font-size:1.35rem}
.choice .price-disclaimer{max-width:none}
.choice .price{margin-top:.75rem;font-weight:700;font-size:1.05rem;color:var(--text)}
.choice .price small{font-weight:500;color:var(--muted);font-size:.78rem;display:block;margin-top:.15rem}
.note-inline{font-size:.82rem;color:var(--muted);margin:.9rem 0 0;padding:.75rem .85rem;background:#F5F5F5;border-left:3px solid var(--accent);border-radius:0 8px 8px 0}
.voice-card .meta{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.55rem}
.voice-card .chip{font-size:.68rem;padding:.15rem .4rem;border-radius:5px;background:var(--card2);color:var(--muted);border:1px solid var(--line)}
.voice-card .chip.chip-surcharge,.voice-card .chip.chip-plus{
  background:#F5E6A8;color:#333;border-color:#E6D27A;font-weight:600;
}
.stimme-filters{margin:.35rem 0 1rem}
.stimme-filters-inner{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.stimme-filter{
  font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;
  padding:.4rem .85rem;border-radius:999px;
  border:1px solid var(--line);background:#F0F0F0;color:var(--muted);
  transition:background .15s,color .15s,border-color .15s;
}
.stimme-filter:hover{border-color:#C8C8C8;color:var(--text)}
.stimme-filter.is-active{
  background:var(--premium);color:#fff;border-color:var(--premium);
}
body.linie-budget .stimme-filter.is-active{
  background:var(--budget);color:#fff;border-color:var(--budget);
}
.stimme-filter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.voice-card .voice-row{display:flex;align-items:center;gap:.75rem;width:100%}
.voice-card .voice-main{flex:1;min-width:0}
.voice-card .voice-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.voice-card .voice-head h3{margin:0;font-size:1.05rem}
.voice-photo,.voice-photo-ph{
  width:52px;height:52px;flex-shrink:0;border-radius:50%;
  object-fit:cover;background:var(--card2);border:1px solid var(--line);
}
.voice-photo-ph{display:inline-block}
.voice-play{
  flex-shrink:0;width:32px;height:32px;padding:0;margin:0;
  border-radius:50%;border:1.5px solid var(--brand);background:transparent;
  color:var(--brand);font-size:.75rem;line-height:1;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;
  transition:background .15s,color .15s,border-color .15s;
}
.voice-play:hover{background:rgba(226,31,24,.08)}
.voice-play.is-playing,.voice-play[aria-pressed="true"]{
  background:var(--brand);color:#fff;border-color:var(--brand);
}
body.linie-budget .voice-play{border-color:var(--budget);color:var(--budget)}
body.linie-budget .voice-play:hover{background:rgba(47,111,174,.1)}
body.linie-budget .voice-play.is-playing,
body.linie-budget .voice-play[aria-pressed="true"]{
  background:var(--budget);color:#fff;border-color:var(--budget);
}
.voice-card .voice-play{align-self:center}
div.choice.voice-card:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.stimme-status{grid-column:1/-1;font-size:.9rem;color:var(--muted);padding:.5rem 0}
.form-row{margin-bottom:1rem}
label.field{display:block;font-size:.82rem;font-weight:600;color:var(--muted);margin-bottom:.35rem}
textarea,input[type=text],input[type=email],input[type=tel],input[type=date],select{
  width:100%;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-control);
  color:var(--text);padding:.75rem .85rem;font:inherit;resize:vertical;
}
textarea:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--text);outline-offset:2px;border-color:var(--text)}
.form-grid{display:grid;gap:0 1rem}
@media (min-width:640px){
  .form-grid{grid-template-columns:1fr 1fr}
}
.contact-form{max-width:40rem}
.contact-form textarea{min-height:9rem}
.req{color:var(--brand);font-weight:700;margin-left:.1rem}
.contact-success .hero-cta{margin-top:1.25rem}
.privacy-note{font-size:.82rem;color:var(--muted);margin:.35rem 0 1rem}
.alert p{margin:0}
.alert ul{margin:.45rem 0 0;padding-left:1.15rem}
.sample-btn{display:inline-flex;margin-top:.5rem;font-size:.82rem;color:var(--accent2);background:transparent;border:none;cursor:pointer;padding:0;font:inherit;text-decoration:underline}
.hint{font-size:.8rem;color:var(--muted);margin-top:.35rem}
.summary{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem}
.summary-cards{display:flex;flex-direction:column}
.summary-card{
  display:flex;flex-direction:column;align-items:stretch;gap:.35rem;
  padding:.85rem 0;border-top:1px solid var(--line);
}
.summary-card:first-child{border-top:0;padding-top:0}
.summary-card:last-child{padding-bottom:0}
.summary-label{margin:0;font-size:.82rem;font-weight:600;color:var(--muted)}
.summary-value{margin:0;font-weight:600;min-width:0;white-space:pre-wrap}
.summary-value .placeholder{display:block;margin-top:.25rem;font-weight:500}
.summary-card select,.summary-card textarea{width:100%;max-width:100%}
.summary-edit-actions{display:flex;flex-wrap:wrap;gap:.65rem}
.summary-status{margin:.85rem 0 0;font-size:.92rem;color:var(--text)}
.summary-status:empty{display:none}
.summary dl{margin:0;display:grid;grid-template-columns:120px 1fr;gap:.45rem .75rem;font-size:.92rem}
.summary dt{color:var(--muted)}
.summary dd{margin:0;font-weight:600}
.summary .total{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:baseline}
.summary .total span{font-size:1.25rem;font-weight:700;color:var(--accent2)}
.placeholder{font-size:.78rem;color:var(--muted);font-weight:500}
.nav-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:var(--space-32);align-items:center}
.nav-actions .btn-primary:disabled,
.nav-actions .btn-primary:disabled:hover,
.price-running .btn-primary:disabled,
.price-running .btn-primary:disabled:hover{
  background:#E6E3DE;border-color:#E6E3DE;color:#595959;opacity:1;cursor:not-allowed;transform:none;box-shadow:none;
}
.spacer{flex:1}
.success{text-align:center;padding:2.5rem 1.2rem;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);margin-top:1rem}
.success h2{margin:0 0 .5rem}
.success p{color:var(--muted);margin:0 0 1.25rem;max-width:42ch;margin-left:auto;margin-right:auto}
.konf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem}
#panel-linie .konf-grid{grid-template-columns:1fr;gap:var(--space-24);align-items:stretch}
#panel-linie .choice{height:100%;padding:2rem 1.75rem 2rem 3.6rem;--mark-x:1.25rem;--mark-y:2.15rem}
#produktGrid{grid-template-columns:1fr;gap:var(--space-24)}
#produktGrid > .choice{padding:1.75rem 1.5rem 1.5rem 3.5rem;--mark-x:1.2rem;--mark-y:1.95rem}
#produktGrid > :not(.choice){grid-column:1 / -1}
@media (min-width:700px){
  #produktGrid{grid-template-columns:1fr 1fr}
}
@media (min-width:800px){
  #panel-linie .konf-grid{grid-template-columns:1fr 1fr;gap:var(--space-32)}
}
@media (min-width:1024px){
  #produktGrid{grid-template-columns:repeat(6,minmax(0,1fr))}
  #produktGrid > .choice{grid-column:span 2}
  #produktGrid > .choice:nth-child(4):nth-last-child(2),
  #produktGrid > .choice:nth-child(5):nth-last-child(1){grid-column:span 3}
}
.musik-list{display:grid;grid-template-columns:1fr;gap:.55rem}
.musik-status{grid-column:1/-1;font-size:.9rem;color:var(--muted);padding:.5rem 0}
.choice.musik-row{
  display:flex;align-items:center;
  padding:.9rem 1rem .9rem 3.15rem;--mark-x:.95rem;--mark-y:calc(50% - .625rem)
}
.choice.musik-row h3{margin:0;font-size:.95rem}
.choice.musik-row p{margin:.2rem 0 0;font-size:.8rem}
.musik-row-inner{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex:1;min-width:0;width:100%}
.musik-main{min-width:0}
.musik-cat{display:block;margin-top:.12rem;font-size:.75rem;font-weight:500;color:var(--muted)}
div.choice.musik-row:focus-visible{outline:2px solid var(--text);outline-offset:3px}
@media (min-width:640px){
  .musik-list{grid-template-columns:1fr 1fr}
}
@media (min-width:900px){
  .musik-list{grid-template-columns:1fr 1fr 1fr}
}
@media (max-width:520px){
  .summary dl{grid-template-columns:1fr}
  .summary dt{margin-top:.35rem}
}


/* Medi — vermenschlichtes Logo, eine Illustration pro Moment */
.medi{display:block;width:auto;height:auto;max-width:100%;object-fit:contain}
.hero-with-medi{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  column-gap:2rem;
}
.medi-hero{width:min(220px,34vw)}
.medi-success{width:min(156px,46vw);margin:0 auto .85rem}
.medi-not-found{width:min(210px,46vw)}

/* 404 */
.not-found{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:1.25rem 2.4rem;
  align-items:center;
  padding:var(--section-space) 0 calc(var(--section-space) / 2);
  margin:0;
}
.not-found .lead{max-width:52ch}
.not-found-path{
  margin:-.35rem 0 1.35rem;
  color:var(--muted);
  font-size:.92rem;
}
.not-found-path code{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:.84em;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:6px;
  padding:.12rem .42rem;
  word-break:break-all;
}
.not-found + .section .paths{padding-bottom:0}
@media (max-width:700px){
  .not-found{grid-template-columns:1fr;gap:.85rem}
  .medi-not-found{width:min(168px,48vw)}
  .hero-with-medi{grid-template-columns:1fr;row-gap:.35rem}
  .hero-with-medi .medi-hero{order:-1;width:min(148px,42vw);margin-bottom:.35rem}
}
/* Startseite: 60/40, Motivgröße folgt dem nahezu randlosen SVG (kaum transparente Außenluft). */
body.home .hero{padding-bottom:var(--space-32)}
@media (min-width:701px){
  body.home .hero-with-medi{
    grid-template-columns:minmax(0,3fr) minmax(0,2fr);
    column-gap:clamp(3rem,4.5vw,4.5rem);
    align-items:center;
  }
  body.home .hero-visual{display:flex;justify-content:flex-end}
  body.home .medi-hero{width:min(320px,100%);height:auto}
}
@media (max-width:700px){
  body.home .hero-visual{order:-1}
  body.home .hero-with-medi .medi-hero{width:min(170px,48vw);height:auto;margin-bottom:0}
}
.trust-strip{padding:0 0 var(--space-16)}
.trust-strip .proof{margin:0;padding:0;list-style:none;gap:.5rem 0}
/* Chip bleibt normaler Textfluss. inline-flex würde das Leerzeichen nach strong verschlucken. */
.trust-strip .chip + .chip::before{
  content:"";display:inline-block;width:.32rem;height:.32rem;margin-inline:.95rem;
  border-radius:50%;background:var(--border);vertical-align:middle;
}
body.home #inklusive{margin-top:var(--space-48)}
body.home #update{padding-top:var(--space-32);padding-bottom:var(--space-32)}

/* FAQ */
.faq-list{display:grid;gap:.65rem}
.faq-item{background:var(--card);border:1px solid var(--line);border-radius:12px}
.faq-item summary{
  cursor:pointer;
  list-style:none;
  padding:.95rem 1.1rem;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary h2{
  margin:0;
  padding-right:1.6rem;
  position:relative;
  font-size:clamp(1.125rem, 1.05rem + 0.3vw, 1.25rem);
  font-weight:700;
  line-height:1.35;
  letter-spacing:0;
  text-wrap:pretty;
}
.faq-item summary h2::after{
  content:"+";
  position:absolute;
  right:0;
  top:0;
  color:var(--brand);
  font-weight:700;
}
.faq-item[open] summary h2::after{content:"–"}
.faq-item summary:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}
.faq-answer{padding:0 1.1rem 1.05rem;color:var(--muted)}
.faq-answer p{margin:0 0 .75rem}
.faq-answer p:last-child{margin-bottom:0}
.faq-answer .price-block{max-width:28rem;margin:.25rem 0 1rem;padding:1rem 1.05rem;background:#fff;border:1px solid var(--line);border-radius:12px}
.faq-links{display:flex;flex-wrap:wrap;gap:.35rem 1rem;margin:.25rem 0 0}

/* Legal pages — same column as .wrap / --content-max; quieter scale than marketing H1/H2.
   Long paragraphs keep a readable measure; the page frame does not shrink. */
.legal{
  width:100%;
  padding-top:var(--section-space);
  padding-bottom:calc(var(--section-space) / 2);
  font-size:1rem;
  line-height:1.65;
  overflow-wrap:break-word;
}
.legal h1{
  font-size:clamp(1.625rem, 1.3rem + 0.8vw, 2rem);
  line-height:1.2;
  letter-spacing:-.015em;
  text-wrap:balance;
  max-width:24ch;
}
.legal h2{
  font-size:1.25rem;
  line-height:1.35;
  letter-spacing:0;
  text-wrap:pretty;
  margin:var(--space-32) 0 var(--space-16);
}
.legal h3{
  font-size:1.0625rem;
  line-height:1.4;
  letter-spacing:0;
  margin:var(--space-24) 0 .5rem;
}
.legal p,.legal li{max-width:68ch}
@property --agb-measure{
  syntax:"<length>";
  inherits:true;
  initial-value:0px;
}
.legal.agb{
  --agb-measure:78ch;
  --agb-section-pad:1.05rem;
  --agb-part-pad:.9rem;
  --agb-sub-pad:.85rem;
}
.legal.agb h1{max-width:22em;margin-bottom:.45rem}
.legal.agb h2{
  margin-top:2.85rem;
  max-width:calc(var(--agb-measure) + var(--agb-section-pad));
}
.legal.agb h3{margin-top:1.75rem}
.legal.agb p,.legal.agb li{max-width:var(--agb-measure)}
.legal.agb h2,.legal.agb h3,.legal.agb h4,.legal.agb p,.legal.agb li,.legal.agb .agb-anchor-alias{scroll-margin-top:calc(var(--header-offset) + .75rem)}
.legal.agb h4{
  font-size:1rem;
  line-height:1.4;
  margin:1.15rem 0 .45rem;
  font-weight:700;
}
.legal.agb strong{font-weight:700}
.legal.agb ul,.legal.agb ol{margin:0 0 1.1rem;padding-left:1.6rem}
.legal.agb li{margin:0 0 .4rem}
.legal.agb p.explanation{
  margin:0 0 1.2rem;
  padding:.8rem 1rem .85rem;
  max-width:none;
  background:#F1F0EC;
  border-radius:10px;
  font-style:italic;
}
.legal.agb p.explanation strong{font-style:italic}
.legal.agb .agb-section{
  max-width:calc(var(--agb-measure) + var(--agb-section-pad));
  margin:0 0 .15rem;
  padding:.1rem 0 .45rem var(--agb-section-pad);
  border-left:2px solid var(--border);
}
.legal.agb .agb-part{padding-left:var(--agb-part-pad)}
.legal.agb .agb-subpart{padding-left:var(--agb-sub-pad)}
.legal.agb .agb-box .agb-section{
  border-left:0;
  padding-left:.35rem;
}
.legal.agb .agb-box .agb-part,
.legal.agb .agb-box .agb-subpart{padding-left:.55rem}
.legal.agb .agb-anchor-alias{display:block;height:0;overflow:hidden}
.legal.agb .agb-inhalt{max-width:var(--agb-measure);margin:0 0 var(--space-32);padding-left:1.6rem}
.legal.agb .agb-inhalt li{margin:.28rem 0}
.legal.agb .agb-stand{
  margin:0 0 1rem;
  max-width:var(--agb-measure);
  color:var(--text);
  font-size:1.125rem;
  font-weight:700;
  line-height:1.35;
}
.legal.agb .agb-tools{
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
  gap:.75rem;
  max-width:42rem;
  margin:0 0 var(--space-32);
  padding-bottom:var(--space-24);
  border-bottom:1px solid var(--border);
}
.legal.agb .agb-tools .btn{
  flex:1 1 16rem;
  padding-inline:1.15rem;
  text-align:center;
  white-space:normal;
}
.legal.agb .agb-inhalt a{color:inherit;text-decoration:underline;text-underline-offset:.15em}
.legal.agb .agb-inhalt a:hover{color:var(--action)}
.legal.agb .agb-inhalt a:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.agb-box{
  box-sizing:border-box;
  width:100%;
  max-width:calc(var(--agb-measure, 68ch) + var(--agb-section-pad, 0px) + 2.8rem);
  margin:0 0 1.5rem;
  padding:1.35rem 1.4rem 1.2rem;
  border:1px solid #000;
  border-radius:0;
  background:#fff;
  -webkit-box-decoration-break:clone;
  box-decoration-break:clone;
}
.legal.agb .agb-box h2,
.legal.agb .agb-box h3,
.legal.agb .agb-box h4,
.legal.agb .agb-box p,
.legal.agb .agb-box li{max-width:none}
.legal.agb .agb-box{overflow-wrap:anywhere}
.legal.agb .agb-box > h2:first-of-type{margin-top:0}
@media (max-width:649px){
  .legal.agb h2{max-width:none}
  .legal.agb .agb-section{
    max-width:none;
    padding-left:.5rem;
  }
  .legal.agb .agb-part{padding-left:.45rem}
  .legal.agb .agb-subpart{padding-left:.4rem}
  .legal.agb .agb-box .agb-section{padding-left:.25rem}
  .legal.agb .agb-box .agb-part,
  .legal.agb .agb-box .agb-subpart{padding-left:.35rem}
  .legal.agb .agb-part ul,
  .legal.agb .agb-part ol,
  .legal.agb .agb-subpart ul,
  .legal.agb .agb-subpart ol{padding-left:1.15rem}
  .legal.agb p.explanation{padding:.7rem .8rem}
}
.agb-field{break-inside:avoid;page-break-inside:avoid}
.agb-fill{
  margin:1.15rem 0 0;
  padding:0;
  min-height:1.45rem;
  border:0;
  border-bottom:1px solid #000;
  background:#fff;
  line-height:1;
  overflow:hidden;
  color:transparent;
  user-select:none;
}
.agb-fill-label{margin:.18rem 0 .15rem;font-size:.92rem;line-height:1.35}
.agb-dates{margin-top:1rem;overflow-wrap:anywhere}
.agb-form-note{margin-top:1.15rem}
.legal-draft{width:100%;margin:1.25rem 0 1.75rem;padding:1.1rem 1.15rem;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface-soft)}
.badge-proto{font-size:.8125rem;background:#FCE8E7;color:var(--brand);padding:.2rem .45rem;border-radius:6px;font-family:var(--font-sans);letter-spacing:.04em}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}

/* Produktionslinien: zwei gleichwertige Flächen, kleine Kennzeichnung im Inhalt */
.line-compare{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:clamp(1.5rem, 2vw, 2rem);
  align-items:stretch;
}
@media (min-width:768px){
  .line-compare{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.line-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  margin:0;
  padding:clamp(1.75rem, 2vw, 2rem);
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  box-shadow:none;
}
.line-card-studio{background:#F7F6F3}
.line-card-ki{background:#F4F8FC}
.line-kicker{
  margin:0 0 .65rem;
  font-size:.875rem;
  font-weight:700;
  letter-spacing:.01em;
  line-height:1.4;
}
.line-kicker-studio{color:var(--premium)}
.line-kicker-ki{color:var(--budget)}
.line-card p{margin:0 0 var(--space-16);color:var(--text-muted)}
.line-card ul{margin:0 0 var(--space-24);padding-left:1.15rem;color:var(--text-muted)}
.line-card li{margin:.35rem 0}
.line-card .btn{align-self:flex-start;margin-top:auto}

/* Startseiten-Produkte: drei / zwei / eine Spalte */
.product-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:var(--space-24);
}
@media (min-width:768px){
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:960px){
  .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
.product-card{
  display:flex;
  flex-direction:column;
  gap:.75rem;
  min-width:0;
  padding:1.75rem;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  box-shadow:none;
  color:inherit;
}
.product-card h3,.product-card p{margin:0}
.product-card p{color:var(--text-muted)}
.product-card-hint{
  margin-top:auto;
  font-size:.875rem;
  font-weight:700;
  color:var(--action);
}
.product-card:hover{border-color:#8C877F}
.product-card:hover .product-card-hint{color:var(--action-hover)}
.product-card:focus-visible{outline:2px solid var(--text);outline-offset:3px}

/* Ablauf: drei Schritte entlang einer Linie. Mobil senkrecht, ab 960px nebeneinander. */
.ablauf-steps{
  --ablauf-mark:3.25rem;
  --ablauf-link:#8C877F;
  position:relative;
  list-style:none;
  margin:var(--space-16) 0 0;
  padding:0;
  display:grid;
  grid-template-columns:minmax(0,1fr);
}
.ablauf-steps > li{
  position:relative;
  display:grid;
  grid-template-columns:var(--ablauf-mark) minmax(0,1fr);
  column-gap:1.25rem;
  align-items:start;
  min-width:0;
  margin:0;
  padding:0 0 var(--space-32);
  background:none;
  border:0;
  box-shadow:none;
}
.ablauf-steps > li:last-child{padding-bottom:0}
.ablauf-steps > li:not(:last-child)::after{
  content:"";
  position:absolute;
  z-index:0;
  top:calc(var(--ablauf-mark) / 2);
  bottom:calc(var(--ablauf-mark) / -2);
  left:calc(var(--ablauf-mark) / 2);
  width:1px;
  background:var(--ablauf-link);
  transform:translateX(-50%);
}
.ablauf-index{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  width:var(--ablauf-mark);
  height:var(--ablauf-mark);
  margin:0;
  border:1px solid rgba(226,31,24,.28);
  border-radius:999px;
  background:#FCE8E7;
  color:var(--brand);
  font-size:1.25rem;
  font-weight:700;
  letter-spacing:0;
  line-height:1;
  font-variant-numeric:tabular-nums;
}
.ablauf-copy{min-width:0;padding-top:.7rem}
.ablauf-steps h3{margin:0 0 .5rem}
.ablauf-steps p{margin:0;color:var(--text-muted)}
@media (min-width:960px){
  .ablauf-steps{
    --ablauf-gap:clamp(2rem, 4vw, 3.5rem);
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-template-rows:auto auto auto;
    column-gap:var(--ablauf-gap);
    margin-top:var(--space-32);
  }
  .ablauf-steps::before{
    content:"";
    position:absolute;
    z-index:0;
    top:calc(var(--ablauf-mark) / 2);
    left:calc(var(--ablauf-mark) / 2);
    right:calc((100% - 2 * var(--ablauf-gap)) / 3 - var(--ablauf-mark) / 2);
    height:1px;
    background:var(--ablauf-link);
    transform:translateY(-50%);
  }
  .ablauf-steps > li{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:subgrid;
    grid-row:span 3;
    align-content:start;
    padding:0;
  }
  .ablauf-steps > li:not(:last-child)::after{content:none}
  .ablauf-copy{display:contents}
  .ablauf-index{justify-self:start}
  .ablauf-steps h3{margin:1.35rem 0 .5rem}
}
@media (forced-colors:active){
  .ablauf-index{border:1px solid CanvasText;background:Canvas;color:CanvasText}
  .ablauf-steps > li:not(:last-child)::after,
  .ablauf-steps::before{background:CanvasText}
}

/* Hörbeispiele */
.sample-groups{display:grid;gap:var(--space-32)}
.sample-group-title{margin:0 0 var(--space-16)}
.sample-grid{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:var(--space-24);
}
@media (min-width:768px){
  .sample-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:960px){
  .sample-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
html.js .sample-grid.is-collapsed > .sample-more{display:none}
.sample-card{
  min-width:0;
  margin:0;
  padding:1rem 1.05rem 1.05rem;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  box-shadow:none;
}
.sample-card .tag{display:inline-block;width:auto;max-width:100%;margin-bottom:.45rem}
.sample-name{display:block;margin:0;font-weight:700;font-size:1.125rem;line-height:1.3;color:var(--text)}
.sample-meta-row{margin:.35rem 0 0}
.sample-meta{display:inline-block;margin-right:.65rem;color:var(--text-muted);font-size:.875rem}
.sample-more-row{margin:var(--space-24) 0 0}
.sample-pending{
  margin:var(--space-24) 0 0;
  max-width:65ch;
  font-size:.875rem;
  line-height:1.5;
  color:var(--text-muted);
}
#hoerbeispiele > .sample-pending{margin-top:0}
.sample-groups + .sample-pending{margin-top:var(--space-24)}

.sample-switch-set .stimme-filters-inner{flex-wrap:wrap}
.sample-switch label.stimme-filter{position:relative;white-space:nowrap;flex:0 0 auto}
.sample-switch-input{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
.sample-switch label.stimme-filter:has(input:checked),
.sample-switch label.stimme-filter:has(input:checked):hover{
  background:var(--premium);color:#fff;border-color:var(--premium);
}
.sample-switch label.stimme-filter:has(input:focus-visible){
  outline:2px solid var(--text);outline-offset:2px;
}
.sample-panel{display:none;margin-top:var(--space-24)}
.sample-panel.is-current{display:block}
.sample-switch:has(input[value="begruessung"]:checked) .sample-panel{display:none}
.sample-switch:has(input[value="begruessung"]:checked) .sample-panel[data-sample-panel="begruessung"]{display:block}
.sample-switch:has(input[value="warteschleife"]:checked) .sample-panel{display:none}
.sample-switch:has(input[value="warteschleife"]:checked) .sample-panel[data-sample-panel="warteschleife"]{display:block}
.sample-switch:has(input[value="anrufbeantworter"]:checked) .sample-panel{display:none}
.sample-switch:has(input[value="anrufbeantworter"]:checked) .sample-panel[data-sample-panel="anrufbeantworter"]{display:block}
.sample-switch:has(input[value="mobilbox"]:checked) .sample-panel{display:none}
.sample-switch:has(input[value="mobilbox"]:checked) .sample-panel[data-sample-panel="mobilbox"]{display:block}
.sample-switch:has(input[value="mailbox"]:checked) .sample-panel{display:none}
.sample-switch:has(input[value="mailbox"]:checked) .sample-panel[data-sample-panel="mailbox"]{display:block}
.sample-switch:has(input[value="corporate"]:checked) .sample-panel{display:none}
.sample-switch:has(input[value="corporate"]:checked) .sample-panel[data-sample-panel="corporate"]{display:block}
.sample-panel-title{
  margin:0 0 var(--space-16);
  font-size:clamp(1.3125rem, 1.22rem + 0.25vw, 1.5rem);
  font-weight:700;line-height:1.3;letter-spacing:-.01em;text-wrap:balance;
}
.sample-preview .sample-grid{grid-template-columns:minmax(0,34rem)}
@media (max-width:959px){
  .sample-preview .sample-grid > li + li{display:none}
}
@media (min-width:960px){
  .sample-preview .sample-grid.sample-grid-n2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sample-preview .sample-grid.sample-grid-n3{grid-template-columns:repeat(3,minmax(0,1fr))}
}
.sample-logo{
  display:block;flex:0 1 auto;width:auto;max-width:min(9.5rem,calc(100% - 3.6rem));
  height:auto;max-height:2.75rem;margin:0;object-fit:contain;object-position:left center;
}
:is(.sample-card-home,.sample-card-page) .msd-player{margin-top:0;align-items:center}
:is(.sample-card-home,.sample-card-page) .msd-player-btn{order:1;flex:0 0 auto}
:is(.sample-card-home,.sample-card-page) :is(.sample-logo,.sample-name){order:2;margin:0}
:is(.sample-card-home,.sample-card-page) .sample-name{flex:1 1 auto;min-width:0}
:is(.sample-card-home,.sample-card-page) .msd-player-status{order:3}
.sample-field{margin:.2rem 0 0;font-size:.9375rem;line-height:1.45;color:var(--text)}
.sample-field-label{
  display:inline-block;min-width:4.6rem;margin-right:.35rem;
  color:var(--text-muted);font-size:.8125rem;font-weight:700;letter-spacing:.02em;
}
.sample-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.85rem 1.25rem;margin-top:var(--space-24)}
.sample-actions .link-brand{font-weight:700}

.msd-player{
  position:relative;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.5rem .75rem;
  margin-top:.85rem;
}
.msd-player audio{display:block;width:100%}
html.js .msd-player audio,
.msd-player.is-ready audio{
  position:absolute;
  width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
.msd-player-btn{
  display:inline-flex;align-items:center;justify-content:center;
  width:2.75rem;height:2.75rem;min-width:2.75rem;min-height:2.75rem;
  padding:0;border-radius:var(--radius-control);border:1px solid #8C877F;
  background:#fff;color:var(--text);font:inherit;font-size:.95rem;line-height:1;cursor:pointer;
}
.msd-player-btn:hover{border-color:#5C5852;background:var(--surface-soft)}
.msd-player-btn:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.msd-player.is-playing .msd-player-btn{background:var(--text);color:#fff;border-color:var(--text)}
.msd-player-status{flex-basis:100%;margin:0;font-size:.875rem;line-height:1.4;color:var(--text)}
.msd-player-status:empty{display:none}
.voice-card .msd-player{margin-top:.65rem}
.musik-row .msd-player{margin-top:0}
.empty-block{grid-column:1/-1;padding:.2rem 0 0}
.empty-title{margin:0 0 .4rem;font-size:1.08rem;font-weight:700;color:var(--text)}
.empty-block p{margin:.35rem 0;color:var(--muted);max-width:52ch}
.empty-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:.85rem}
.empty-alt{margin-top:.85rem}
.text-link{
  font:inherit;font-size:1rem;font-weight:700;color:var(--action);background:transparent;
  border:none;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:.15em;
}
.text-link:hover{color:var(--action-hover)}
.text-link:focus-visible{outline:2px solid var(--text);outline-offset:3px}

/* Startseite: höchstens zwei große, weiche Alternativflächen */
body.home #hoerbeispiele{
  background:var(--surface-soft);
  margin-inline:calc(-1 * clamp(1.25rem, 3vw, 3rem));
  padding-inline:clamp(1.25rem, 3vw, 3rem);
}

/* Unterseiten: kompakter Hero, Preisflächen, Kontakt */
.hero.hero-compact{
  padding-top:clamp(2.25rem, 4vw, 3.5rem);
  padding-bottom:clamp(1rem, 2vw, 1.75rem);
}
.hero-with-visual{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-items:center;
  gap:var(--space-32);
}
.hero-copy,.hero-visual{min-width:0}
.hero-visual .medi-hero{width:min(168px,46vw);height:auto;margin-inline:auto}
.hero-visual .sample-grid{grid-template-columns:minmax(0,1fr)}
@media (min-width:768px){
  .hero-with-visual{
    grid-template-columns:minmax(0,1.5fr) minmax(16rem,.85fr);
    column-gap:clamp(3rem, 4.5vw, 4.5rem);
  }
  .hero-visual .medi-hero{width:min(280px,100%)}
}
.hero.hero-compact.hero-with-medi{
  align-items:center;
  column-gap:1.25rem;
}
.hero.hero-compact.hero-with-medi .medi-hero{width:min(112px,30vw);margin:0}
@media (min-width:701px){
  .hero.hero-compact.hero-with-medi .medi-hero{width:min(168px,100%)}
}
@media (max-width:700px){
  .hero.hero-compact.hero-with-medi{
    grid-template-columns:minmax(0,1fr) auto;
    align-items:start;
  }
  .hero.hero-compact.hero-with-medi .medi-hero{order:0;width:min(96px,28vw);margin:0}
}

#preise .grid{
  grid-template-columns:minmax(0,1fr);
  gap:clamp(1.5rem, 2vw, 2rem);
}
@media (min-width:768px){
  #preise .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
#preise .card{
  padding:clamp(1.75rem, 2vw, 2rem);
  background:#fff;
}
#preise .card > p{max-width:none}
#preise .price-gross{font-size:clamp(2rem, 1.5rem + 1.2vw, 2.75rem)}
#preise .price-vat{font-size:1rem;line-height:1.45;color:var(--text)}
#preise .price-net{font-size:.9375rem;line-height:1.45}
#preise .price-disclaimer,#preise .price-copy,#preise .price-includes{
  max-width:none;
  font-size:.9375rem;
  line-height:1.55;
}
#preise .price-disclaimer{color:var(--text-muted)}

.people{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:var(--space-24);
  margin:0 0 var(--space-24);
}
@media (min-width:768px){
  .people{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.person{
  margin:0;
  padding:clamp(1.75rem, 2vw, 2rem);
  background:var(--surface-soft);
  border-radius:var(--radius-card);
}
.person h3{margin:0 0 .35rem}
.person p{margin:0;color:var(--text-muted)}

.contact-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:var(--space-32);
  align-items:start;
  padding-top:clamp(1.25rem, 2.5vw, 2rem);
}
@media (min-width:960px){
  .contact-layout{
    grid-template-columns:minmax(0,2fr) minmax(15rem,1fr);
    gap:clamp(2rem, 3vw, 3rem);
  }
}
.contact-main{min-width:0}
.contact-layout .contact-form{max-width:none}
.contact-aside > h2{
  margin:0 0 var(--space-24);
  font-size:clamp(1.3125rem, 1.22rem + 0.25vw, 1.5rem);
  font-weight:700;
  line-height:1.3;
  letter-spacing:-.01em;
}
.contact-detail{margin:0 0 var(--space-24)}
.contact-detail h3{
  margin:0 0 .35rem;
  font-size:1rem;
  line-height:1.4;
}
.contact-detail p{margin:0;color:var(--text-muted);overflow-wrap:anywhere}
.contact-form label.field{color:var(--text);font-size:.9375rem}
.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"],
.contact-form input[type="date"],
.contact-form select{
  height:3.25rem;
  min-height:3.25rem;
  padding:.5rem .85rem;
  background:#fff;
  border:1px solid var(--border);
}
.contact-form textarea{
  background:#fff;
  border:1px solid var(--border);
  min-height:9rem;
}
.contact-form textarea#anschrift{min-height:6.5rem}
.contact-form fieldset{border:0;margin:0 0 1rem;padding:0;min-width:0}
.contact-form legend.field{padding:0}
.radio-line{display:flex;align-items:flex-start;gap:.55rem;margin:.4rem 0;font-weight:600}
.radio-line input{width:1.15rem;height:1.15rem;margin-top:.15rem;flex:0 0 auto;accent-color:var(--brand)}
.legal-receipt{display:grid;gap:.2rem 1.25rem;margin:1.25rem 0 0}
.legal-receipt dt{font-weight:700;margin:.65rem 0 0}
.legal-receipt dt:first-child{margin-top:0}
.legal-receipt dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
@media (min-width:700px){
  .legal-receipt{grid-template-columns:minmax(12rem,17rem) minmax(0,1fr);align-items:baseline}
  .legal-receipt dt{margin-top:0}
}
.contact-form [aria-invalid="true"]{
  border-color:var(--danger);
  box-shadow:inset 0 0 0 1px var(--danger);
}
.field-error{
  display:flex;
  align-items:flex-start;
  gap:.45rem;
  margin:.45rem 0 0;
  color:var(--text);
  font-size:.875rem;
  line-height:1.45;
}
.field-error-mark{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:1.15rem;
  height:1.15rem;
  margin-top:.1rem;
  border:2px solid var(--danger);
  border-radius:50%;
  color:var(--danger);
  font-weight:700;
  font-size:.75rem;
  line-height:1;
  flex:0 0 auto;
}
.form-more{
  margin:0 0 1rem;
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  background:#fff;
}
.form-more summary{
  cursor:pointer;
  list-style:none;
  position:relative;
  min-height:3.25rem;
  padding:1rem 2.6rem 1rem 1.15rem;
  font-weight:700;
}
.form-more summary::after{
  content:"+";
  position:absolute;
  right:1.15rem;
  top:1rem;
  font-weight:700;
  line-height:1;
}
.form-more[open] summary::after{content:"–"}
.form-more summary::-webkit-details-marker{display:none}
.form-more summary:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.form-more-body{padding:0 1.15rem .35rem}
.consent{
  margin-top:1.25rem;padding:1rem 1.1rem 1.15rem;
  border:1px solid var(--line);border-radius:var(--radius);background:var(--card);
}
.consent legend{font-weight:700;padding:0 .25rem}
.consent-label{font-weight:700;margin:.9rem 0 .35rem}
.consent-note{font-size:.88rem;color:var(--muted);margin:.35rem 0 .8rem;line-height:1.45}
.consent-choice{margin:.4rem 0 .2rem}
.consent-check{
  display:flex;gap:.7rem;align-items:flex-start;
  margin:.55rem 0;font-size:.95rem;line-height:1.45;cursor:pointer;
}
.consent-check input{margin-top:.25rem;flex:0 0 auto;width:1.1rem;height:1.1rem;accent-color:var(--brand)}
.consent-check a{color:var(--brand)}
#btnSubmit{white-space:normal;text-align:center;max-width:100%}
.order-start{
  margin:1rem 0 0;padding:.85rem 1rem;
  border:1px solid var(--line);border-radius:var(--radius-control);
  background:var(--surface-soft);font-size:.92rem;line-height:1.5;color:var(--text);
}
.order-start p{margin:.28rem 0}
.order-total{
  margin:1.1rem 0 .85rem;padding:.9rem 1rem;
  border:1px solid var(--line);border-left:4px solid var(--brand);
  border-radius:var(--radius-control);background:#fff;
}
.summary-checkout{
  display:flex;justify-content:space-between;align-items:flex-end;gap:.75rem;
  margin-top:var(--space-32);
}
.summary-checkout-end{
  display:flex;flex-direction:column;align-items:flex-end;gap:.75rem;margin-left:auto;
}
.summary-checkout .order-total{margin:0;text-align:right;min-width:12rem}
@media (max-width:700px){
  .summary-checkout{flex-direction:column;align-items:stretch}
  .summary-checkout-end{order:-1;align-items:flex-end;width:100%;margin-left:0}
  .summary-checkout .order-total{text-align:right}
  .summary-checkout #btnSubmit,
  .summary-checkout > .btn{width:100%}
}
.order-total .price-gross{font-size:1.65rem;margin:0}
.order-total .price-vat{margin:.2rem 0 0}
.order-total .price-net{margin:.12rem 0 0}
.accept-page{max-width:40rem;margin:2rem auto;padding:0 1rem 3rem}
.accept-page h1{font-size:1.6rem;margin-bottom:.6rem}
.accept-page .accept-meta{margin:1rem 0;line-height:1.5}

@page agb{
  size:A4;
  margin:16mm 14mm 18mm;
  @bottom-center{
    content:counter(page);
    color:#000;
    font-family:"Times New Roman",Times,serif;
    font-size:10pt;
  }
}
@media print{
  body.page-agb{page:agb}
  body.page-agb .site-header,
  body.page-agb .site-footer,
  body.page-agb .site-nav,
  body.page-agb .nav-toggle,
  body.page-agb .agb-tools,
  body.page-agb [class*="cookie"],
  body.page-agb [id*="cookie"],
  body.page-agb [class*="consent-banner"],
  body.page-agb .cc-window{display:none !important}
  body.page-agb{background:#fff;color:#000}
  body.page-agb .wrap{max-width:none;padding-inline:0}
  body.page-agb .legal.agb{padding-top:0;padding-bottom:0}
  body.page-agb .agb-stand{color:#000;font-size:12pt}
  body.page-agb h1,
  body.page-agb h2,
  body.page-agb h3,
  body.page-agb h4{
    break-after:avoid;
    page-break-after:avoid;
  }
  body.page-agb p,
  body.page-agb li{orphans:3;widows:3}
  body.page-agb .agb-anlage,
  body.page-agb #glossar{
    break-before:page;
    page-break-before:always;
  }
  body.page-agb .agb-box{
    border:1px solid #000 !important;
    background:#fff !important;
    -webkit-box-decoration-break:clone;
    box-decoration-break:clone;
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
    break-inside:auto;
    page-break-inside:auto;
  }
  body.page-agb .agb-box-form{
    break-inside:avoid;
    page-break-inside:avoid;
  }
  body.page-agb .legal.agb p.explanation{
    background:#F1F0EC !important;
    font-style:italic;
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }
  body.page-agb .legal.agb .agb-section{
    border-left-color:#D9D6D0;
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }
  body.page-agb #glossar{margin-top:0}
  body.page-agb .agb-field,
  body.page-agb .agb-dates,
  body.page-agb .agb-form-note{
    break-inside:avoid;
    page-break-inside:avoid;
  }
  body.page-agb .agb-fill{
    border-bottom:1px solid #000 !important;
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }
  body.page-agb .agb-inhalt a{text-decoration:none;color:#000}
  body.page-agb .legal.agb a{color:#000}
}
.share-cart-row{
  display:flex;
  justify-content:flex-end;
  margin:.35rem 0 0;
}
.share-cart-link{
  font-family:inherit;
  font-size:.875rem;
  font-weight:400;
  line-height:1.4;
  color:var(--muted);
  background:transparent;
  border:0;
  padding:0;
  text-decoration:underline;
  text-underline-offset:.18em;
  cursor:pointer;
}
.share-cart-link:hover{color:var(--text)}
.share-cart-link:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.share-dialog{
  border:1px solid var(--line);
  border-radius:var(--radius-card);
  padding:1.25rem 1.3rem 1.35rem;
  max-width:32rem;
  width:calc(100% - 2rem);
  background:var(--surface);
  color:var(--text);
}
.share-dialog::backdrop{background:rgba(32,32,32,.45)}
.share-dialog h2{margin:0 0 .75rem;font-size:1.25rem}
.share-dialog p{margin:0 0 .75rem;color:var(--muted);font-size:.9375rem;line-height:1.5}
.share-dialog label{display:block;font-weight:700;margin:.25rem 0 .4rem;color:var(--text)}
.share-dialog select,
.share-dialog input[type="text"]{
  width:100%;
  box-sizing:border-box;
  font:inherit;
  padding:.65rem .75rem;
  border:1px solid var(--line);
  border-radius:var(--radius-control);
  background:#fff;
  color:var(--text);
}
.share-dialog .nav-actions{margin-top:1rem}
.share-dialog .alert{margin-bottom:0}
.shared-cart-note ul{margin:.25rem 0 .75rem;padding-left:1.2rem}
.cart-unavailable-actions{margin:1.25rem 0 .35rem}
.cart-unavailable-alt{margin:.25rem 0 0}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
}
