/* ============== FACHGEWERK SUBPAGE STYLES ============== */
:root{
  --indigo:#202942;
  --indigo-2:#171e30;
  --orange:#F3730A;
  --orange-2:#d8650a;
  --platinum:#F1F1F1;
  --silver:#CCCCCC;
  --ink:#0f1424;
  --muted:#5b6478;
  --line:#d8dbe2;
  --line-strong:#b6bbc7;
  --max:1440px;
  --pad:clamp(20px, 4vw, 56px);
}
*{box-sizing:border-box}
*,*::before,*::after{margin:0;padding:0}
html,body{margin:0;padding:0}
body{
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size:16px;line-height:1.6;
  color:#2c2f37;background:#fff;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--max);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}

/* TOPBAR */
.topbar{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(140%) blur(8px);
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid var(--line);
}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand-logo{height:32px;width:auto;display:block}
.brand-logo--footer{height:56px;width:auto;display:block}
.menu{display:flex;gap:32px;font-family:'Outfit',sans-serif;font-size:14px;letter-spacing:.02em;color:var(--indigo);font-weight:500}
.menu a{padding:6px 0;border-bottom:1px solid transparent}
.menu a:hover{border-color:var(--orange)}
@media (max-width:780px){.menu{display:none}}

.btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:14px 22px;border-radius:999px;
  font-family:'Outfit',sans-serif;font-weight:500;font-size:14px;
  letter-spacing:.02em;transition:background .2s, color .2s;
  border:none;cursor:pointer;
}
.btn .arrow{transition:transform .2s ease}
.btn:hover .arrow{transform:translateX(4px)}
.btn-primary{background:var(--orange);color:#fff}
.btn-primary:hover{background:var(--orange-2)}
.btn-dark{background:var(--indigo);color:#fff}
.btn-dark:hover{background:var(--indigo-2)}
.btn-ghost{background:transparent;color:var(--indigo);border:1px solid var(--line-strong)}
.btn-ghost:hover{border-color:var(--indigo);background:#fafafa}

/* PAGE HEADER */
.page-head{
  background:var(--indigo);color:#fff;
  padding:clamp(56px,7vw,96px) 0 clamp(48px,6vw,72px);
}
.page-head .eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-family:'Outfit',sans-serif;font-size:12px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--orange);font-weight:500;
  padding:8px 14px;border-radius:999px;
  border:1px solid color-mix(in oklab, var(--orange) 50%, transparent);
}
.page-head .eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--orange)}
.page-head h1{
  font-family:'Outfit',sans-serif;font-weight:700;color:#fff;
  font-size:clamp(34px,4.4vw,56px);letter-spacing:-0.025em;line-height:1.05;
  margin-top:18px;
}
.page-head .lede{
  margin-top:18px;color:#a8b0c4;font-size:17px;line-height:1.6;max-width:60ch;
}
.back-home{
  display:inline-flex;align-items:center;gap:8px;margin-bottom:24px;
  font-family:'Outfit',sans-serif;font-size:13px;letter-spacing:.06em;
  color:#a8b0c4;
}
.back-home:hover{color:#fff}

/* CONTENT */
main.legal{padding:clamp(56px,6vw,88px) 0;background:#fafbfc}
.legal-grid{
  max-width:820px;margin:0 auto;
  display:flex;flex-direction:column;gap:24px;
}
.legal-card{
  background:#fff;border:1px solid var(--line);border-radius:14px;
  padding:clamp(24px,3vw,40px);
}
.legal-card h2{
  font-family:'Outfit',sans-serif;font-size:14px;font-weight:700;
  letter-spacing:.16em;text-transform:uppercase;color:var(--indigo);
  padding-bottom:12px;border-bottom:2px solid var(--orange);
  display:inline-block;margin-bottom:20px;
}
.legal-card h3{
  font-family:'Outfit',sans-serif;font-size:15px;font-weight:700;
  color:var(--indigo);margin:18px 0 8px;letter-spacing:-0.005em;
}
.legal-card p{font-size:15.5px;color:#3a3f4d;line-height:1.75;margin-bottom:12px}
.legal-card p:last-child{margin-bottom:0}
.legal-card strong{color:var(--indigo);font-weight:600}
.legal-card a{color:var(--orange);word-break:break-word}
.legal-card a:hover{text-decoration:underline}
.legal-card ul{margin:10px 0 14px 22px}
.legal-card ul li{font-size:15.5px;color:#3a3f4d;line-height:1.75;margin-bottom:4px}

.info-grid{
  display:grid;grid-template-columns:180px 1fr;gap:10px 20px;
  font-size:15.5px;
}
.info-grid .label{color:var(--muted);font-weight:500}
.info-grid .value{color:#3a3f4d}
@media (max-width:560px){
  .info-grid{grid-template-columns:1fr;gap:2px}
  .info-grid .label{margin-top:8px}
}

.absatzliste{list-style:none;padding-left:0;margin:0;counter-reset:absatz}
.absatzliste>li{
  counter-increment:absatz;margin-bottom:12px;
  font-size:15.5px;color:#3a3f4d;line-height:1.75;
  display:flex;gap:12px;
}
.absatzliste>li::before{
  content:"(" counter(absatz) ")";font-family:'Outfit',sans-serif;
  font-weight:700;color:var(--orange);flex-shrink:0;min-width:32px;
}
.stand{margin-top:14px;font-family:'Outfit',sans-serif;font-size:13px;letter-spacing:.08em;color:var(--muted);text-transform:uppercase}

/* FOOTER (matches landing page) */
footer.site{background:#0f1424;color:#9aa3bb;padding:64px 0 32px;border-top:1px solid #1c2238}
.foot-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.foot-brand{display:flex;flex-direction:column;gap:16px}
.foot-brand .desc{font-size:14.5px;color:#9aa3bb;line-height:1.6;max-width:36ch}
.foot-col h5{font-family:'Outfit',sans-serif;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:#fff;margin:0 0 16px;font-weight:600}
.foot-col ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.foot-col li{font-size:14.5px}
.foot-col a:hover{color:var(--orange)}
.foot-bottom{
  margin-top:48px;padding-top:24px;border-top:1px solid #1c2238;
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;
  font-size:13px;color:#6a738f;font-family:'Outfit',sans-serif;letter-spacing:.04em;
}
.foot-bottom a:hover{color:var(--orange)}
@media (max-width:900px){.foot-top{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.foot-top{grid-template-columns:1fr}}

/* CONTACT PAGE */
.contact-shell{
  display:grid;grid-template-columns: 1fr 1.3fr;gap:48px;align-items:start;
  max-width:var(--max);margin:0 auto;padding:clamp(48px,6vw,80px) var(--pad);
}
@media (max-width:980px){.contact-shell{grid-template-columns:1fr;gap:32px}}
.contact-info h2{
  font-family:'Outfit',sans-serif;font-size:clamp(28px,3vw,40px);
  font-weight:700;letter-spacing:-0.02em;color:var(--indigo);line-height:1.15;
}
.contact-info .lede{
  margin-top:18px;color:#3a3f4d;font-size:16.5px;line-height:1.65;max-width:50ch;
}
.contact-bullets{
  list-style:none;padding:0;margin:24px 0 0;display:flex;flex-direction:column;gap:12px;
}
.contact-bullets li{display:flex;gap:12px;font-size:15.5px;color:#2c2f37}
.contact-bullets .check{
  flex-shrink:0;width:22px;height:22px;border-radius:50%;
  background:color-mix(in oklab, var(--orange) 14%, white);
  display:grid;place-items:center;margin-top:1px;
}
.contact-bullets .check svg{width:12px;height:12px;stroke:var(--orange);stroke-width:2.6;fill:none}
.contact-direct{
  margin-top:32px;padding:24px;border:1px solid var(--line);border-radius:14px;
  background:#fff;display:flex;flex-direction:column;gap:8px;
}
.contact-direct .h{font-family:'Outfit',sans-serif;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--orange)}
.contact-direct a{color:var(--indigo);font-weight:600}
.contact-direct a:hover{color:var(--orange)}

.form-card{
  background:#fff;border:1px solid var(--line);border-radius:14px;
  padding:clamp(20px,2.5vw,32px);min-height:560px;overflow:hidden;
}
.form-card-head{
  font-family:'Outfit',sans-serif;font-size:11.5px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--orange);
  padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:20px;
}
#wufoo-mxci8js0ne0pxo iframe{border-radius:8px;width:100%!important}
