*{box-sizing:border-box}
body{margin:0;background:#F1ECE2;color:#2F3627;font-family:'Archivo',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{margin:0;font-family:'Archivo',system-ui,sans-serif}
p{margin:0}
.display{font-family:'Archivo',system-ui,sans-serif}
.mono{font-family:'IBM Plex Mono',ui-monospace,monospace}
.wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 clamp(20px,4.5vw,64px)}
.wall{position:relative;background:#F1ECE2}
.light{position:absolute;inset:0;pointer-events:none;opacity:0.5;background-image:repeating-linear-gradient(172deg,rgba(255,252,243,0.95) 0 15px,rgba(255,255,255,0) 15px 44px);-webkit-mask-image:linear-gradient(to left,rgba(0,0,0,1) 0%,rgba(0,0,0,0.22) 36%,rgba(0,0,0,0) 62%);mask-image:linear-gradient(to left,rgba(0,0,0,1) 0%,rgba(0,0,0,0.22) 36%,rgba(0,0,0,0) 62%)}
.sill{height:12px;background:#F7F3E7;border-top:1px solid #E4DCC8;border-bottom:3px solid #CDC5AE}
.slatline{height:18px;background-image:repeating-linear-gradient(180deg,rgba(47,54,39,0.22) 0 1px,rgba(0,0,0,0) 1px 6px)}
.tdark th{color:#ffffff;border-bottom-color:#A8B578}
.tdark td{color:#C3C7B5;border-top-color:#464E3B}
.tdark td:first-child{color:#ffffff}
@media (max-width:980px){.flowline{display:none}}
.card,.legendrow,figure,.win,.panel{transition:transform .28s cubic-bezier(.2,.7,.2,1),box-shadow .28s,border-color .2s,background .2s}
figure{box-shadow:0 18px 34px -26px rgba(47,54,39,0.55)}
.card{box-shadow:0 16px 30px -24px rgba(47,54,39,0.45)}
.card:hover{transform:translateY(-5px);box-shadow:0 28px 46px -26px rgba(47,54,39,0.5)}
.legendrow:hover{background:rgba(94,110,60,0.07)}
.win{box-shadow:0 36px 64px -40px rgba(47,54,39,0.8)}
.panel{box-shadow:0 26px 48px -32px rgba(47,54,39,0.6)}
.heroblock{box-shadow:0 36px 68px -42px rgba(47,54,39,0.85)}
.floatcard .statcard{box-shadow:0 30px 54px -34px rgba(47,54,39,0.65)}
.cta{box-shadow:0 14px 26px -16px rgba(200,118,29,0.8);transition:background .2s,transform .2s,box-shadow .2s}
.cta:hover{transform:translateY(-2px);box-shadow:0 20px 34px -18px rgba(200,118,29,0.85)}
.cta svg,.card svg,.totop svg{transition:transform .2s}
.cta:hover svg{transform:translateX(4px)}
.totop{transition:background .2s,transform .2s,box-shadow .2s;box-shadow:0 16px 28px -14px rgba(47,54,39,0.65)}
.totop:hover{transform:translateY(-3px)}
.wall{background-image:radial-gradient(rgba(47,54,39,0.06) 1px,rgba(0,0,0,0) 1px);background-size:5px 5px}
@keyframes drift{from{transform:translateY(0)}to{transform:translateY(44.4px)}}
.light{top:-70px;bottom:-70px;animation:drift 22s linear infinite}
@keyframes grow{from{width:0}}
.slat{animation:grow .9s cubic-bezier(.2,.75,.25,1) backwards}
@keyframes pop{from{opacity:0;transform:translate(-50%,-50%) scale(0.55)}}
.chip{animation:pop .5s cubic-bezier(.2,.75,.25,1) backwards}
@media (min-width:981px){
  .stagger>div:nth-child(even){margin-top:44px}
}
@media (prefers-reduced-motion:reduce){
  .light,.slat,.chip{animation:none}
  .card:hover,.cta:hover,.totop:hover{transform:none}
}
a{color:#52603A;text-decoration:none}
a:hover{color:#2F3627}
.navlink:hover .navlabel{color:#2F3627}
.navlink:hover .navidx{color:#52603A}
.flink{color:#E9EADD}
.flink:hover{color:#ffffff}
.totop:hover{background:#2F3627}
.mono{font-family:'Archivo',system-ui,sans-serif!important;text-transform:none!important;letter-spacing:0.02em!important;font-weight:600!important}
.navidx,[aria-current="page"] .mono,.systile .mono{font-family:'IBM Plex Mono',ui-monospace,monospace!important;letter-spacing:0.1em!important;font-weight:500!important}
span.mono[style*="letter-spacing:0.16em"]{font-size:13px!important}
figcaption.mono{font-size:12.5px!important;padding:12px 14px!important}
caption.mono{font-size:13px!important}
.card,.panel,.win,.statcard,.heroblock,.scrollx,figure{border-radius:16px}
figure{overflow:hidden}
.cta,a[style*="min-height:5"],.navtoggle{border-radius:999px}
.card{background:#FBF9F4!important;border-color:#E7E0D0!important}
[style*="background:#DED7C7"]{gap:16px!important;background:transparent!important;border:0!important}
[style*="background:#DED7C7"]>*{border:1px solid #E7E0D0;border-radius:16px}
th,td{padding:16px 18px!important;border-top-color:#EDE7DA!important}
tbody tr:nth-child(even) td{background:rgba(47,54,39,0.035)}
.wall{overflow:hidden}
.wall::before,.wall::after{content:"";position:absolute;pointer-events:none;background:url(../deko/monstera-dunkel.svg) no-repeat center/contain;opacity:0.06}
.wall::before{right:-78px;top:-64px;width:380px;height:402px;transform:rotate(16deg)}
.wall::after{left:-96px;bottom:-72px;width:290px;height:308px;transform:rotate(-156deg)}
section[style*="background:#EAEBD6"]{position:relative;overflow:hidden}
section[style*="background:#EAEBD6"]::after{content:"";position:absolute;right:-70px;bottom:-84px;width:320px;height:340px;background:url(../deko/monstera-dunkel.svg) no-repeat center/contain;opacity:0.09;transform:rotate(-22deg);pointer-events:none}
footer{position:relative;overflow:hidden}
footer::after{content:"";position:absolute;right:-56px;bottom:-96px;width:340px;height:360px;background:url(../deko/monstera-hell.svg) no-repeat center/contain;opacity:0.055;transform:rotate(-26deg);pointer-events:none}
.card:hover{border-color:#2F3627}
.navtoggle{display:none}
h1{font-size:clamp(36px,5.2vw,64px);font-weight:800;line-height:1;letter-spacing:-0.035em}
h2{font-size:clamp(26px,3.4vw,40px);font-weight:700;line-height:1.1;letter-spacing:-0.03em}
h3{font-size:21px;font-weight:700;line-height:1.25;letter-spacing:-0.02em}
h4{font-size:18px;font-weight:700;line-height:1.3;letter-spacing:-0.02em}
p{font-size:17px;line-height:1.62}
p a,li a,dd a,td a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:rgba(82,96,58,0.5)}
p a:hover,li a:hover,dd a:hover,td a:hover{text-decoration-color:#2F3627}
table{border-collapse:collapse;width:100%}
th,td{text-align:left;padding:15px 16px;border-top:1px solid #DED7C7;font-size:16px;line-height:1.62;vertical-align:top;color:#3E463A}
th{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:0.1em;text-transform:uppercase;color:#2F3627;border-top:none;border-bottom:2px solid #2F3627}
td:first-child{color:#2F3627;font-weight:600}
.scrollx{overflow-x:auto}
@media (max-width:980px){
  .navdesk{display:none}
  .navtoggle{display:inline-flex}
  .cols3,.cols4{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:660px){
  .cols2,.cols3,.cols4{grid-template-columns:minmax(0,1fr)!important}
}
/* === Typo-Skala, verbindlich: nichts unter 15px (11pt) === */
body{-webkit-font-smoothing:auto}
p{font-size:18px;line-height:1.62}
li,dd{font-size:17px;line-height:1.62}
h3{font-size:22px!important;font-weight:700!important;line-height:1.25!important;letter-spacing:-0.02em!important}
h4{font-size:19px!important;font-weight:700!important;line-height:1.3!important;letter-spacing:-0.02em!important}
[style*="font-size:10px"],[style*="font-size:10.5px"],[style*="font-size:11px"],[style*="font-size:12.5px"],[style*="font-size:13px"]{font-size:15px!important}
[style*="font-size:14px"]{font-size:16px!important}
[style*="font-size:16px"]{font-size:17px!important}
[style*="font-size:17px"]{font-size:18px!important}
[style*="font-size:18px"]{font-size:19px!important}
[style*="font-size:21px"]{font-size:22px!important}
[style*="font-size:24px"]{font-size:25px!important}
[style*="clamp(16.5px,1.5vw,18px)"]{font-size:clamp(18px,1.6vw,20px)!important;line-height:1.6!important}
[style*="clamp(21px,2.2vw,25px)"]{font-size:clamp(22px,2.3vw,26px)!important}
[style*="letter-spacing:0.18em"],[style*="letter-spacing:0.16em"],[style*="letter-spacing:0.14em"],[style*="letter-spacing:0.12em"],[style*="letter-spacing:0.1em"]{letter-spacing:0.06em!important}
.mono{font-family:'Archivo',system-ui,sans-serif!important;text-transform:none!important;font-weight:700!important;letter-spacing:0.03em!important}
span.mono[style*="letter-spacing:0.18em"],span.mono[style*="letter-spacing:0.16em"],span.mono[style*="letter-spacing:0.14em"]{font-size:15px!important}
p.mono{font-size:16px!important;font-weight:600!important;letter-spacing:0.01em!important;color:#4A5340!important}
dt.mono{font-size:15px!important;font-weight:700!important;letter-spacing:0.02em!important}
figcaption.mono{font-size:16px!important;font-weight:600!important;letter-spacing:0.005em!important;padding:14px 16px!important;color:#FFFFFF!important;background:rgba(47,54,39,0.95)!important}
caption.mono{font-size:16px!important;font-weight:700!important;letter-spacing:0.01em!important}
.navidx,[aria-current="page"] .mono{font-family:'IBM Plex Mono',ui-monospace,monospace!important;font-size:15px!important;font-weight:600!important;letter-spacing:0.06em!important}
.navlabel{font-size:17px!important;font-weight:600!important}
.navtoggle{font-family:'Archivo',system-ui,sans-serif!important;font-size:15px!important;font-weight:700!important;letter-spacing:0.03em!important;text-transform:none!important}
.systile>.mono{font-family:'Archivo',system-ui,sans-serif!important;text-transform:none!important;font-size:16px!important;font-weight:600!important;letter-spacing:0.005em!important;margin-top:12px!important;color:#3F4A2C!important}
.systile .panel .mono{font-family:'IBM Plex Mono',ui-monospace,monospace!important;font-size:15px!important;font-weight:600!important;letter-spacing:0.04em!important;width:36px!important;height:36px!important}
.legendrow>span[style*="border-radius:50%"]{font-family:'IBM Plex Mono',ui-monospace,monospace!important;font-size:16px!important;font-weight:600!important;letter-spacing:0.04em!important;background:#46532F!important}
.legendrow .legendtitle{font-size:22px!important}
.legendrow>span:last-child>span:not(.legendtitle){font-size:18px!important;line-height:1.6!important;font-weight:500!important;color:#333B2D!important}
th{font-family:'Archivo',system-ui,sans-serif!important;font-size:15px!important;font-weight:700!important;letter-spacing:0.02em!important;text-transform:none!important;color:#2F3627!important}
td{font-size:17px!important;line-height:1.6!important;color:#333B2D!important}
p a,li a,dd a,dt a,td a{color:#46532F!important;text-decoration:underline!important;text-underline-offset:3px;text-decoration-thickness:1.5px;text-decoration-color:rgba(70,83,47,0.55)}
p a:hover,li a:hover,dd a:hover,dt a:hover,td a:hover{color:#2F3627!important;text-decoration-color:#2F3627}
[style*="color:#565E50"]{color:#454E3C!important}
[style*="color:#5F6657"]{color:#4C5542!important}
[style*="color:#3E463A"]{color:#333B2D!important}
[style*="color:#C3C7B5"],.tdark td{color:#DCE0CE!important}
.tdark td:first-child{color:#FFFFFF!important}
[style*="color:#ADB49F"]{color:#C7CDB7!important}
[style*="color:#9AA288"]{color:#B4BBA2!important}
[style*="color:#A8B578"],.tdark th{color:#C2CE91!important}
footer a:not(.cta),.flink,.tdark a,[style*="background:#2F3627"] a:not(.cta),[style*="background:#52603A"] a:not(.cta){color:#E9EADD!important;text-decoration-color:rgba(233,234,221,0.55)!important}
footer a:not(.cta):hover,.flink:hover,.tdark a:hover,[style*="background:#2F3627"] a:not(.cta):hover,[style*="background:#52603A"] a:not(.cta):hover{color:#FFFFFF!important;text-decoration-color:#FFFFFF!important}
.wall::before,.wall::after,section[style*="background:#EAEBD6"]::after,footer::after{z-index:0}
.wall>*:not(.light),section[style*="background:#EAEBD6"]>*,footer>*{position:relative;z-index:1}
.kordel{display:block;width:1px;height:14px;background:#8E9A7A;transition:height .22s,width .22s,background .22s}
.knopf{display:block;width:9px;height:9px;border-radius:50%;border:1.5px solid #8E9A7A;background:#ffffff;transition:width .22s,height .22s,background .22s,border-color .22s}
.navlink:hover .kordel{height:20px;background:#52603A}
.navlink:hover .knopf{border-color:#52603A}
.navlink:hover .navlabel{color:#2F3627}
[aria-current="page"] .kordel{height:24px;width:2px;background:#52603A}
[aria-current="page"] .knopf{width:12px;height:12px;background:#52603A;border-color:#52603A}
[aria-current="page"] .navlabel{color:#2F3627!important;font-weight:700!important}
.navschiene{flex:1 1 auto;min-width:0;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;border-top:2px solid #2F3627}
@media (prefers-reduced-motion:reduce){.kordel,.knopf{transition:none}}
@media (max-width:980px){.navdesk{display:none!important}}
header li a,footer li a{text-decoration:none!important}
