:root{--green:#008a70;--dark:#005747;--mint:#eaf6f1;--ink:#303332;--muted:#68766f;--white:#fff}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--white)}body{font-family:"DM Sans",Arial,sans-serif;color:var(--ink)}
.landing{position:relative;min-height:100vh;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.14fr) minmax(360px,.86fr);grid-template-rows:auto 1fr auto;padding:42px clamp(28px,5vw,82px);background:linear-gradient(90deg,#fff 0 62%,var(--mint) 62%)}
.header{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.header img{display:block;width:clamp(190px,20vw,285px);height:auto}.status{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:600;color:var(--dark);letter-spacing:.03em}.status i{display:block;width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 6px rgba(0,138,112,.12)}
.content{align-self:center;position:relative;z-index:2;max-width:740px;padding:70px 70px 60px 0}.eyebrow{margin:0 0 22px;color:var(--green);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.22em}.eyebrow:before{content:"";display:inline-block;width:35px;height:1px;margin-right:13px;vertical-align:middle;background:currentColor}h1{margin:0;font-family:"Newsreader",Georgia,serif;font-size:clamp(56px,7.2vw,108px);font-weight:400;line-height:.9;letter-spacing:-.045em}h1 em{color:var(--green);font-weight:400}.intro{max-width:610px;margin:30px 0 38px;color:var(--muted);font-size:clamp(16px,1.45vw,19px);line-height:1.7}
.contact-card{max-width:610px;border-top:1px solid #dce8e2;padding-top:18px}.contact-card>p{margin:0 0 10px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--muted)}.contact-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contact-links a{position:relative;padding:17px 45px 17px 18px;background:var(--mint);color:var(--dark);text-decoration:none;transition:.25s ease}.contact-links a:hover,.contact-links a:focus-visible{background:var(--green);color:#fff;transform:translateY(-2px)}.contact-links span,.contact-links strong{display:block}.contact-links span{font-size:9px;text-transform:uppercase;letter-spacing:.14em;opacity:.72}.contact-links strong{margin-top:3px;font-family:"Newsreader",Georgia,serif;font-size:18px;font-weight:500}.contact-links b{position:absolute;right:18px;top:50%;transform:translateY(-50%);font-weight:400}
.visual{position:relative;align-self:center;justify-self:center;width:min(35vw,510px);aspect-ratio:1;display:grid;place-items:center;z-index:1}.rings{position:absolute;inset:0;display:grid;place-items:center;animation:float 7s ease-in-out infinite}.rings span{position:absolute;border:1px solid rgba(0,138,112,.25);border-radius:50%}.rings span:nth-child(1){width:100%;height:100%}.rings span:nth-child(2){width:78%;height:78%;border-color:rgba(0,138,112,.35)}.rings span:nth-child(3){width:55%;height:55%;border-color:rgba(0,138,112,.48)}.rings span:nth-child(4){width:30%;height:30%;background:var(--green);border:0;box-shadow:0 30px 70px rgba(0,87,71,.22)}.center-mark{width:9%;height:32%;position:absolute;background:#fff;border-radius:50% 50% 45% 45%;z-index:2}.center-mark:before,.center-mark:after{content:"";position:absolute;left:50%;width:190%;height:1px;background:#fff;transform:translateX(-50%)}.center-mark:before{top:34%}.center-mark:after{top:66%}.visual p{position:absolute;bottom:-18px;margin:0;text-align:center;color:var(--dark);font-family:"Newsreader",Georgia,serif;font-size:21px;line-height:1.25}
.decor{position:absolute;border:1px solid rgba(0,138,112,.08);border-radius:50%;pointer-events:none}.decor-one{width:420px;height:420px;left:-280px;bottom:-200px}.decor-two{width:650px;height:650px;right:-470px;top:-360px}footer{grid-column:1/-1;display:flex;justify-content:space-between;position:relative;z-index:2;padding-top:20px;border-top:1px solid rgba(0,87,71,.14);color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.14em}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@media(max-width:850px){.landing{grid-template-columns:1fr;grid-template-rows:auto auto auto auto;padding:28px 24px;background:linear-gradient(180deg,#fff 0 65%,var(--mint) 65%)}.header{align-items:flex-start}.status{max-width:145px;text-align:right}.content{padding:80px 0 30px}.visual{width:min(72vw,390px);margin:25px auto 70px}.contact-links{grid-template-columns:1fr}footer{margin-top:20px}}
@media(max-width:500px){.header img{width:168px}.status{font-size:9px;max-width:120px}.landing{padding:22px 18px}.content{padding-top:65px}h1{font-size:52px}.intro{font-size:15px;margin:24px 0 30px}.visual{width:78vw}.visual p{font-size:18px}}
@media(prefers-reduced-motion:reduce){.rings{animation:none}.contact-links a{transition:none}}

/* Eingangs- und Scan-Animation */
.header{animation:fade-down .9s cubic-bezier(.2,.7,.2,1) both}.status i{animation:status-pulse 2.4s ease-out infinite}.eyebrow{animation:fade-up .75s .15s both}h1{animation:fade-up .9s .28s cubic-bezier(.2,.7,.2,1) both}.intro{animation:fade-up .85s .45s both}.contact-card{animation:fade-up .85s .62s both}.visual{animation:scale-in 1.2s .25s cubic-bezier(.2,.7,.2,1) both}footer{animation:fade-up .7s .8s both}.scan-line{position:absolute;left:18%;right:18%;top:18%;height:2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);filter:drop-shadow(0 0 7px #fff);animation:scan 3.8s ease-in-out infinite}.footer-right{display:flex;gap:25px}footer a{color:var(--dark);text-decoration:none}footer a:hover{text-decoration:underline}
@keyframes fade-up{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes fade-down{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}@keyframes scale-in{from{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}@keyframes scan{0%,100%{top:20%;opacity:0}15%,85%{opacity:1}100%{top:80%;opacity:0}}@keyframes status-pulse{0%{box-shadow:0 0 0 0 rgba(0,138,112,.35)}70%,100%{box-shadow:0 0 0 9px rgba(0,138,112,0)}}
@media(prefers-reduced-motion:reduce){.header,.status i,.eyebrow,h1,.intro,.contact-card,.visual,footer,.scan-line{animation:none}}

/* Logo-Animation mit transparentem Mittelpunkt */
.rings,.center-mark,.scan-line{display:none}.logo-animation{position:absolute;inset:0;display:grid;place-items:center}.animated-logo{position:relative;z-index:3;width:62%;padding:25px 28px;background:rgba(255,255,255,.88);box-shadow:0 22px 60px rgba(0,87,71,.1);animation:logo-breathe 4.5s ease-in-out infinite}.animated-logo img{display:block;width:100%;height:auto}.orbit{position:absolute;border:1px solid rgba(0,138,112,.34);border-radius:50%;background:transparent!important}.orbit-one{width:96%;height:64%;animation:orbit-turn 16s linear infinite}.orbit-two{width:72%;height:96%;animation:orbit-turn-reverse 20s linear infinite}.orbit-three{width:84%;height:84%;border-style:dashed;border-color:rgba(0,138,112,.2);animation:orbit-turn 28s linear infinite}.orbit-dot{position:absolute;width:9px;height:9px;border-radius:50%;background:#008a70;box-shadow:0 0 0 7px rgba(0,138,112,.1)}.dot-one{animation:dot-path-one 8s ease-in-out infinite}.dot-two{width:6px;height:6px;animation:dot-path-two 10s ease-in-out infinite}.footer-right{flex-wrap:wrap;justify-content:flex-end}
@keyframes logo-breathe{0%,100%{transform:translateY(0);box-shadow:0 22px 60px rgba(0,87,71,.1)}50%{transform:translateY(-7px);box-shadow:0 30px 70px rgba(0,87,71,.16)}}@keyframes orbit-turn{to{transform:rotate(360deg)}}@keyframes orbit-turn-reverse{to{transform:rotate(-360deg)}}@keyframes dot-path-one{0%,100%{transform:translate(-190px,-70px)}50%{transform:translate(190px,70px)}}@keyframes dot-path-two{0%,100%{transform:translate(110px,-190px)}50%{transform:translate(-110px,190px)}}
@media(max-width:850px){.footer-right{gap:12px 20px}.animated-logo{width:66%}}@media(max-width:500px){footer{gap:15px;align-items:flex-start}.footer-right{max-width:65%;font-size:8px}.dot-one,.dot-two{display:none}.animated-logo{width:72%;padding:18px}}
@media(prefers-reduced-motion:reduce){.animated-logo,.orbit,.orbit-dot{animation:none}}

/* Logo vollständig freigestellt */
.animated-logo{width:72%;padding:0;background:transparent;box-shadow:none}.animated-logo img{filter:none}.header img{object-fit:contain}.animated-logo{animation:logo-float 4.5s ease-in-out infinite}@keyframes logo-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@media(max-width:850px){.animated-logo{width:75%}}@media(max-width:500px){.animated-logo{width:82%;padding:0}}
