    @font-face{font-family:"IBM Plex Serif";src:url(assets/fonts/ibm-plex-serif-500-normal.woff2) format('woff2');font-style:normal;font-weight:500;font-display:swap}
    @font-face{font-family:"IBM Plex Mono";src:url(assets/fonts/ibm-plex-mono-latin-400-normal.woff2) format('woff2');font-style:normal;font-weight:400;font-display:swap}
    @font-face{font-family:"IBM Plex Mono";src:url(assets/fonts/ibm-plex-mono-latin-500-normal.woff2) format('woff2');font-style:normal;font-weight:500;font-display:swap}
    @font-face{font-family:Bricolage;src:url(assets/fonts/bricolage-grotesque-600-normal-latin.woff2) format('woff2');font-weight:600;font-display:swap}
    @font-face{font-family:Hanken;src:url(assets/fonts/hanken-grotesk-400-normal-latin.woff2) format('woff2');font-weight:400;font-display:swap}
    @font-face{font-family:Hanken;src:url(assets/fonts/hanken-grotesk-600-normal-latin.woff2) format('woff2');font-weight:600;font-display:swap}
    :root{--ink:#15201b;--muted:#53635b;--muted-2:#65736c;--green:#0f7a52;--green-dark:#0a5c3d;--green-soft:#d6efe3;--accent-soft:#d6efe3;--paper:#f7faf8;--surface:#fff;--card:#fff;--line:#dbe4df;--dark:#0b1812;--max:1160px}
    *{box-sizing:border-box}
    html{scroll-behavior:smooth;scrollbar-gutter:stable}
    body{margin:0;color:var(--ink);background:var(--surface);font:400 18px/1.55 Hanken,Arial,sans-serif}
    body.is-locked{overflow:hidden}
    h1,h2,h3,p{margin-top:0}
    h1,h2{font-family:Hanken,Arial,sans-serif;font-weight:600;line-height:1.1;letter-spacing:-.014em;text-wrap:balance;hyphens:none}
    h3{font-family:Hanken,Arial,sans-serif;font-weight:600;line-height:1.18;letter-spacing:-.01em}
    .brand{font-family:Bricolage,Hanken,sans-serif;font-weight:600;line-height:1.06}
    a{color:inherit}
    .container{width:min(var(--max),calc(100% - 48px));margin:auto}
    .skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:12px;z-index:99;background:#fff;padding:10px}
    .wm{white-space:nowrap}.u{position:relative;display:inline-block;line-height:1}.u:after{content:"";position:absolute;left:.05em;right:.2em;bottom:-.04em;height:.08em;background:var(--green);border-radius:.035em}
    .header{position:fixed;top:0;left:0;right:0;z-index:90;background:var(--paper);border-bottom:1px solid transparent}
    .header__inner{width:min(var(--max),100%);margin:auto;padding:0 clamp(16px,4vw,32px);height:74px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
    .wordmark{justify-self:center;display:inline-flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);font:600 1.25rem/1 Bricolage,Hanken,sans-serif;letter-spacing:-.01em}
    .crest{width:30px;height:30px}
    .burger{justify-self:start;height:46px;display:inline-flex;align-items:center;gap:12px;padding:8px 4px;background:none;border:0;color:var(--ink);cursor:pointer;font:600 1.05rem/1 Hanken,sans-serif}
    .burger__icon{width:30px;display:flex;flex-direction:column;gap:6px}.burger__icon i{display:block;width:100%;height:2px;background:var(--ink);border-radius:2px}.burger__icon i:nth-child(2){width:72%}.burger__label{display:block}
    .search-trigger{justify-self:end;display:inline-flex;align-items:center;gap:8px;background:none;border:0;cursor:pointer;color:var(--ink);font:600 .98rem Hanken,sans-serif;padding:8px 4px}
    .search-trigger svg{width:20px;height:20px;stroke:var(--ink);fill:none;stroke-width:2;stroke-linecap:round}.search-trigger kbd{font-size:.78rem;color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:1px 7px;line-height:1.4}
    .overlay{position:fixed;inset:0;z-index:100;background:rgba(21,32,27,.34);opacity:0;pointer-events:none;transition:.25s}.overlay.is-open{opacity:1;pointer-events:auto}
    .drawer{position:fixed;top:0;left:0;bottom:0;width:min(384px,87vw);z-index:110;background:#fff;box-shadow:30px 0 80px rgba(21,32,27,.14);display:flex;flex-direction:column;transform:translateX(-103%);transition:transform .4s cubic-bezier(.7,0,.3,1)}.drawer.is-open{transform:translateX(0)}.drawer__top{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 8px}.drawer__title{font:600 1.2rem/1 Hanken,Arial,sans-serif;letter-spacing:-.01em}.drawer__close,.search__close{width:44px;height:44px;border:0;background:none;font-size:1.7rem;cursor:pointer}.drawer__nav{flex:1;overflow-y:auto;padding:8px 32px;display:flex;flex-direction:column;gap:6px}.drawer__start{display:block;text-decoration:none;color:var(--ink);font-weight:600;font-size:1.16rem;padding:14px 16px;border:1px solid var(--green);border-radius:12px;letter-spacing:-.01em}.drawer__group{margin:24px 0 6px;color:var(--muted-2);font-weight:600;font-size:.82rem;letter-spacing:.02em}.drawer__link{display:block;text-decoration:none;color:var(--ink);font-size:1.08rem;padding:11px 16px;border-radius:10px;transition:background .15s,color .15s}.drawer__link:hover{background:#e9f5ef;color:var(--green)}.drawer__cta{padding:18px 32px 28px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:11px}.drawer__cta .btn{width:100%}
    .search{position:fixed;inset:0;z-index:130;background:rgba(21,32,27,.38);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:clamp(56px,12vh,120px) clamp(16px,5vw,32px) 40px;display:flex;flex-direction:column;align-items:center}.search[hidden]{display:none}.search__inner{width:100%;max-width:640px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 30px 80px rgba(21,32,27,.22);overflow:hidden}.search__bar{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line)}.search__input{flex:1;min-width:0;background:none;border:0;font:600 clamp(1.1rem,2.6vw,1.4rem) Hanken,Arial,sans-serif;color:var(--ink);padding:0;outline:0;letter-spacing:-.01em}.search__input::placeholder{color:var(--muted-2)}.search__close{flex-shrink:0;width:40px;height:40px;font-size:1.5rem}.search__hint{color:var(--muted-2);font-size:.9rem;margin:0;padding:14px 20px 6px}.search__results{padding:2px 0 8px;max-height:54vh;overflow-y:auto}.search__result{display:block;text-decoration:none;padding:14px 20px;transition:background .15s}.search__result+.search__result{border-top:1px solid var(--line)}.search__result:hover{background:var(--paper)}.search__result-title{font:600 1.05rem Hanken,Arial,sans-serif;color:var(--ink);letter-spacing:-.01em}.search__result-desc{color:var(--muted);font-size:.95rem;margin-top:4px;line-height:1.45}.search__empty{color:var(--muted-2);padding:18px 20px}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
    :where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid #fff;outline-offset:2px;box-shadow:0 0 0 5px var(--green-dark)}
    .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border:2px solid var(--green);border-radius:999px;text-decoration:none;font-weight:600;transition:.2s}
    .btn:hover{transform:translateY(-2px)}
    .btn--primary{background:var(--green);color:#fff}.btn--primary:hover{background:var(--green-dark)}
    .legal-card a.btn--primary{color:#fff}
    .btn--outline{color:var(--ink);background:transparent;border-color:var(--ink)}
    .btn--light{color:#fff;border-color:#fff}
    .kicker{display:inline-block;color:var(--green);font-size:1.05rem;font-weight:600;text-transform:none;letter-spacing:.005em;margin-bottom:16px}
    .hero{position:relative;overflow:hidden;background-color:var(--paper);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='50' height='86.6' viewBox='0 0 50 86.6'%3E%3Cg fill='none' stroke='%230f7a52' stroke-width='1.3' opacity='0.08'%3E%3Cpolygon points='25,0 50,14.43 50,43.3 25,57.73 0,43.3 0,14.43'/%3E%3Cpolygon points='0,43.3 25,57.73 25,86.6 0,101.03 -25,86.6 -25,57.73'/%3E%3Cpolygon points='50,43.3 75,57.73 75,86.6 50,101.03 25,86.6 25,57.73'/%3E%3C/g%3E%3C/svg%3E"),radial-gradient(820px 560px at 88% 108%,rgba(15,122,82,.16),transparent 62%),radial-gradient(620px 480px at 6% -6%,rgba(255,255,255,.7),transparent 60%);background-size:56px 97px,auto,auto;background-repeat:repeat,no-repeat,no-repeat;padding:112px 0 64px}
    .hero__grid{position:relative;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);gap:72px;align-items:center}
    .hero .kicker{text-transform:none;letter-spacing:.005em;font-size:.98rem}
    .hero h1{font-size:clamp(2.2rem,4.2vw,3.3rem);max-width:22ch;line-height:1.12;letter-spacing:-.015em;margin-bottom:25px}
    .hero__lead{font-size:1.18rem;max-width:62ch;color:var(--muted)}
    .hero__lead,.section__intro,.about__text p,.contact__lead,.principle p,.cta__content p,.product__copy p{text-wrap:pretty}
    .hero__lead strong{color:var(--ink);font-weight:600}
    .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
    .hero__art{display:grid;place-items:center}
    .hero__art svg{width:min(100%,430px);filter:drop-shadow(0 24px 38px rgba(15,122,82,.12))}
    .section{padding:72px 0}.section--alt{background:var(--paper)}main>section[id]{scroll-margin-top:80px}
    .section__head{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:20px 56px;align-items:start;margin-bottom:36px}
    .section__head--single{grid-template-columns:1fr}.section__head--single h2{max-width:24ch}
    .section h2{font-size:clamp(1.7rem,2.8vw,2.4rem);letter-spacing:-.012em;margin-bottom:0}
    .section__intro{color:var(--muted);max-width:62ch;padding-top:8px;margin-bottom:0}
    .product{display:grid;grid-template-columns:1.05fr .95fr;min-height:440px;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 22px 70px rgba(20,52,38,.08)}
    .product__copy{padding:44px 46px;display:flex;flex-direction:column;align-items:flex-start}
    .tag{display:inline-flex;border-radius:999px;background:var(--green-soft);color:var(--green-dark);font-size:.78rem;font-weight:600;padding:7px 13px;margin-bottom:24px}
    .product h3{font-size:clamp(1.5rem,2.5vw,2.2rem);margin-bottom:18px}
    .product p{color:var(--muted);max-width:52ch}
    .product .actions{margin-top:auto;padding-top:24px}
    .product__visual{position:relative;display:grid;place-items:center;background:linear-gradient(140deg,var(--green) 0%,#0b5f40 100%);padding:42px;color:#fff;overflow:hidden}
    .product__visual:before{content:"";position:absolute;width:430px;height:430px;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:0 0 0 60px rgba(255,255,255,.04),0 0 0 120px rgba(255,255,255,.035)}
    .product__screenshot{position:relative;z-index:1;display:block;width:min(100%,680px);height:auto;border:1px solid rgba(255,255,255,.62);border-radius:14px;box-shadow:0 30px 70px rgba(0,0,0,.30);transform:rotate(-1.2deg);transition:transform .45s cubic-bezier(.2,.75,.2,1),box-shadow .45s}
    .product__visual:hover .product__screenshot{transform:rotate(0) scale(1.015);box-shadow:0 36px 84px rgba(0,0,0,.34)}
    .workflow-layout{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:clamp(36px,5vw,64px);align-items:center}.workflow-copy h2{font-size:clamp(2rem,3.4vw,2.9rem);max-width:16ch;margin:0}.workflow-copy .section__intro{font-size:1.08rem;line-height:1.65;margin-top:20px}.dev-cycle{position:relative;width:min(560px,100%);aspect-ratio:1;margin:auto;isolation:isolate}.dev-cycle:before{content:"";position:absolute;inset:18%;border-radius:50%;background:radial-gradient(circle,rgba(15,122,82,.09),transparent 67%);filter:blur(8px);z-index:-1}.dev-cycle__ring{position:absolute;inset:8%;width:84%;height:84%;overflow:visible}.cycle-track{fill:none;stroke:var(--line);stroke-width:2}.cycle-track--inner{fill:none;stroke:rgba(15,122,82,.12);stroke-width:1;stroke-dasharray:4 12}.cycle-progress{fill:none;stroke:var(--green);stroke-width:5;stroke-linecap:round;stroke-dasharray:104 1436;transform-box:view-box;transform-origin:center;transform:rotate(-90deg);filter:drop-shadow(0 0 6px rgba(15,122,82,.28))}.dev-cycle__center{position:absolute;inset:33%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;filter:drop-shadow(0 18px 24px rgba(21,32,27,.10))}.cycle-core-logo{display:block;width:112px;height:112px}.cycle-core-logo polygon{fill:rgba(255,255,255,.98);stroke:var(--ink);stroke-width:5}.cycle-core-logo text{fill:var(--ink);font:700 46px/1 Hanken,sans-serif}.cycle-core-logo rect{fill:var(--green)}.cycle-core-wordmark{display:block;margin-top:5px;font:600 1.08rem/1 Bricolage,Hanken,sans-serif}.cycle-status{display:block;min-width:142px;margin-top:9px;padding:6px 10px;color:var(--green);background:rgba(255,255,255,.94);border:1px solid rgba(15,122,82,.18);border-radius:999px;font:600 .7rem/1.2 Hanken,sans-serif;transition:opacity .18s,transform .18s}.cycle-status.is-changing{opacity:0;transform:translateY(3px)}.dev-cycle__node{appearance:none;position:absolute;width:208px;min-height:104px;background:rgba(255,255,255,.96);color:var(--ink);border:1px solid var(--line);border-radius:18px;padding:16px 17px;display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:center;text-align:left;font:inherit;cursor:pointer;box-shadow:0 12px 34px rgba(21,32,27,.06);transition:border-color .25s,background .25s,box-shadow .32s}.dev-cycle__node:hover{border-color:rgba(15,122,82,.55);box-shadow:0 18px 46px rgba(21,32,27,.10)}.dev-cycle__node:focus-visible{outline:3px solid #fff;outline-offset:2px;box-shadow:0 0 0 5px var(--green-dark)}.dev-cycle__node.is-active{border-color:var(--green);background:var(--green-soft);background:color-mix(in srgb,var(--green-soft) 45%,#fff);box-shadow:0 20px 52px rgba(15,122,82,.17)}.cycle-icon{width:36px;height:40px;display:grid;place-items:center;color:var(--green);background:var(--green-soft);clip-path:polygon(25% 5%,75% 5%,100% 50%,75% 95%,25% 95%,0 50%)}.cycle-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.cycle-title{display:block;font:600 1.02rem/1.25 Bricolage,Hanken,sans-serif;margin:0 0 3px}.cycle-description{display:block;color:var(--muted);font-size:.8rem;line-height:1.35;margin:0}.dev-cycle__node--1{top:15.7%;left:50%;transform:translate(-50%,-50%)}.dev-cycle__node--1.is-active{transform:translate(-50%,-50%)}.dev-cycle__node--2{right:0;top:50%;transform:translateY(-50%)}.dev-cycle__node--2.is-active{transform:translateY(-50%)}.dev-cycle__node--3{bottom:15.7%;left:50%;transform:translate(-50%,50%)}.dev-cycle__node--3.is-active{transform:translate(-50%,50%)}.dev-cycle__node--4{left:0;top:50%;transform:translateY(-50%)}.dev-cycle__node--4.is-active{transform:translateY(-50%)}
    .dev-cycle__node:focus-visible{box-shadow:0 0 0 5px var(--green-dark),0 20px 52px rgba(15,122,82,.17)}
    .principles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .principle{padding:30px;border:1px solid var(--line);border-radius:16px;background:#fff}
    .principle__icon{width:48px;height:48px;display:grid;place-items:center;margin-bottom:25px}.principle__icon svg{width:48px;height:48px}.principle__icon .icon-u{font:700 34px/1 Hanken,sans-serif;fill:var(--ink)}
    .principle h3{font-size:1.25rem;margin-bottom:10px}.principle p{font-size:.95rem;color:var(--muted);margin:0}
    #ueber{padding:72px 0}#ueber .kicker{margin-bottom:10px}#ueber h2{max-width:18ch}
    .about{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(390px,.8fr);gap:clamp(28px,4vw,56px);align-items:start;margin-top:22px}.about__text p{color:var(--muted);font-size:1.05rem;line-height:1.6;margin:0 0 14px;max-width:60ch}.about__text p:last-child{margin-bottom:0}.about__card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;display:grid;grid-template-columns:140px minmax(0,1fr);grid-template-rows:auto auto auto;align-items:center;column-gap:20px;row-gap:2px;text-align:left;width:100%;max-width:460px;justify-self:end}.founder__media{position:relative;grid-row:1/4;width:140px;aspect-ratio:4/5;margin:0;border-radius:14px;overflow:hidden;background:#fff}.founder__hexbg{position:absolute;inset:0;width:100%;height:100%}.founder__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;filter:grayscale(1) contrast(1.03);transition:filter .45s ease,transform .45s ease}.founder__media:hover .founder__photo,.founder__media:focus-within .founder__photo{filter:grayscale(0);transform:scale(1.02)}.about__name{align-self:end;font:600 1.15rem/1.3 Hanken,Arial,sans-serif;letter-spacing:-.01em;color:var(--ink);margin:0}.about__role{align-self:center;color:var(--muted-2);font-size:.95rem;margin:0}.about__mail{align-self:start;margin:2px 0 0;color:var(--green);text-decoration:none;font-weight:600;font-size:.9rem;overflow-wrap:anywhere}.about__mail:hover{text-decoration:underline}
    .cta{position:relative;overflow:hidden;color:#fff;padding:clamp(56px,6vw,76px) 0;background:linear-gradient(135deg,var(--green) 0%,var(--green-dark) 100%)}
    .cta:after{content:"";position:absolute;inset:-35% -8% auto auto;width:min(48vw,620px);aspect-ratio:1;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cg fill='none' stroke='%23fff'%3E%3Cpolygon stroke-opacity='.10' stroke-width='.6' points='100,4 183.1,52 183.1,148 100,196 16.9,148 16.9,52'/%3E%3Cpolygon stroke-opacity='.06' stroke-width='.8' points='100,34 157.2,67 157.2,133 100,166 42.8,133 42.8,67'/%3E%3Cpolygon stroke-opacity='.05' stroke-width='1' points='100,62 132.9,81 132.9,119 100,138 67.1,119 67.1,81'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;pointer-events:none}
    .cta__inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);align-items:start;gap:clamp(36px,5vw,64px)}
    .cta__eyebrow{display:inline-block;margin-bottom:17px;color:#dff5e9;font-size:.9rem;font-weight:600;letter-spacing:.012em}
    .cta h2{max-width:22ch;margin:0;font-size:clamp(1.9rem,2.8vw,2.5rem);line-height:1.16;letter-spacing:-.012em;text-wrap:balance;hyphens:none}
    .cta__content{display:flex;min-width:0;flex-direction:column;align-items:flex-start;padding-left:clamp(28px,4vw,52px);border-left:1px solid rgba(255,255,255,.24)}
    .cta p{max-width:43ch;margin:0;color:#f2fff8;font-size:1.03rem;line-height:1.65}
    .cta .btn--light{margin-top:28px;min-height:52px;color:var(--green-dark);background:#fff;border-color:#fff;box-shadow:0 10px 28px rgba(5,44,29,.16)}
    .cta .btn--light:hover{color:var(--green-dark);background:var(--green-soft);border-color:var(--green-soft);transform:none}
    .contact{position:relative;overflow:hidden;padding:clamp(72px,10vw,120px) 0;border-top:1px solid var(--line)}
    .contact:before{content:"";position:absolute;inset:0;background:radial-gradient(760px 480px at 90% 4%,rgba(15,122,82,.10),transparent 60%)}
    .contact__grid{position:relative;z-index:1;display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(28px,4vw,52px);align-items:start}
    .contact__intro{position:sticky;top:110px;max-width:32rem}
    .contact__title{font-size:clamp(1.95rem,3.2vw,2.6rem);font-weight:500;line-height:1.06;letter-spacing:-.018em;max-width:20ch;margin:16px 0 0}
    .contact__lead{color:var(--muted);font-size:1.08rem;line-height:1.6;max-width:42ch;margin:14px 0 22px}
    .contact__mail{font:600 clamp(1.1rem,2vw,1.5rem) Hanken,Arial,sans-serif;letter-spacing:-.01em;margin:0}
    .contact__mail a{color:var(--ink);text-decoration:none;border-bottom:3px solid var(--green);padding-bottom:3px}
    .contact__mail a:hover{color:var(--green)}
    .contact-form{background:#fff;border:1px solid var(--line);border-radius:22px;padding:clamp(24px,3vw,40px);box-shadow:0 24px 60px rgba(21,32,27,.07)}
    .contact-form__header{padding-bottom:26px;border-bottom:1px solid var(--line)}
    .contact-form__header .kicker{margin-bottom:7px;font-size:.9rem}
    .contact-form__header h2,.contact-form__header h3{font-size:clamp(1.55rem,2.4vw,2rem);margin:0 0 8px}
    .contact-form__header p{max-width:58ch;margin:0;color:var(--muted);font-size:.92rem;line-height:1.5}
    .contact-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px;margin-top:26px}
    .form-field{min-width:0;display:flex;flex-direction:column;gap:8px}
    .form-field--full{grid-column:1/-1}
    .form-field>label,.form-label-row label{color:var(--ink);font-weight:600;font-size:.92rem}
    .form-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:14px}
    .form-optional,.form-counter{color:var(--muted-2);font-size:.78rem;font-variant-numeric:tabular-nums}
    .contact-form input:not([type="checkbox"]),.contact-form select,.contact-form textarea{width:100%;min-height:54px;border:1px solid #cbd8d1;border-radius:12px;background:#fff;color:var(--ink);font:400 1rem/1.4 Hanken,Arial,sans-serif;padding:13px 15px;transition:border-color .18s,box-shadow .18s,background .18s}
    .contact-form textarea{min-height:162px;resize:vertical}
    .contact-form select{appearance:none;padding-right:44px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 7.5 5 5 5-5' fill='none' stroke='%2315201b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:18px}
    .contact-form input::placeholder,.contact-form textarea::placeholder{color:#78877f;opacity:1}
    .contact-form input:not([type="checkbox"]):hover,.contact-form select:hover,.contact-form textarea:hover{border-color:#9eb5aa}
    .contact-form input:not([type="checkbox"]):focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--green);background:#fcfffd}
    .contact-form input:disabled,.contact-form select:disabled,.contact-form textarea:disabled{cursor:wait;opacity:.74;background:#f4f6f5}
    .contact-form [aria-invalid="true"]{border-color:#a13b32!important;background:#fffafa!important}
    .field-error{display:block;color:#8f3029;font-size:.82rem;line-height:1.4}
    .form-consent{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:start;min-height:44px;margin-top:24px;color:var(--muted);font-size:.9rem;line-height:1.5}
    .form-consent input{width:21px;height:21px;margin:2px 0 0;accent-color:var(--green);cursor:pointer}
    .form-consent__copy{display:flex;flex-wrap:wrap;gap:2px 8px}.form-consent label{cursor:pointer}
    .form-consent a,.form-status a{color:var(--green);font-weight:600;text-underline-offset:3px}
    .contact-form__footer{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px 22px;align-items:center;margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}
    .contact-form__submit{min-width:180px;gap:10px}
    .contact-form__submit:disabled{cursor:wait;opacity:.76;transform:none}
    .contact-form__submit.is-loading [data-submit-icon]{width:15px;height:15px;border:2px solid rgba(255,255,255,.48);border-top-color:#fff;border-radius:50%;font-size:0;animation:contact-spin .75s linear infinite}
    .form-status{min-height:1.5em;margin:0;color:var(--muted);font-size:.9rem;line-height:1.5}
    .form-status.is-success,.form-status.is-error{grid-column:1/-1;padding:13px 15px;border-radius:10px}
    .form-status.is-success{background:var(--green-soft);color:var(--green-dark)}
    .form-status.is-error{background:#fff0ee;color:#7e2b25}
    .form-hp{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
    .legal-layout.legal-layout--single{display:block;max-width:900px}.legal-layout--single .legal-content{max-width:none}
    @keyframes contact-spin{to{transform:rotate(360deg)}}
    .footer{border-top:1px solid var(--line);background:transparent;padding:44px 0 60px;color:var(--muted-2);font-size:.88rem}.footer__inner{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center}.footer__about strong{color:var(--ink);font-weight:600}.footer__wordmark{font-size:1.25rem;gap:11px}.footer__wordmark .crest{width:30px;height:30px}.footer__legal{text-align:right}.footer__legal a{color:var(--muted)}
    .legal-page{background:var(--paper)}
    .legal-header{position:sticky;top:0;z-index:90;background:rgba(247,250,248,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
    .legal-header__inner{width:min(var(--max),100%);height:74px;margin:auto;padding:0 clamp(16px,4vw,32px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
    .legal-header__back,.legal-header__context{display:inline-flex;align-items:center;gap:8px;color:var(--ink);text-decoration:none;font-weight:600;font-size:.94rem}.legal-header__back{justify-self:start}.legal-header__back span[aria-hidden]{color:var(--green);font-size:1.35rem}.legal-header__context{justify-self:end;color:var(--green)}.legal-header__back:hover,.legal-header__context:hover{text-decoration:underline;text-underline-offset:4px}
    .legal-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line);background-color:var(--paper);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='50' height='86.6' viewBox='0 0 50 86.6'%3E%3Cg fill='none' stroke='%230f7a52' stroke-width='1.3' opacity='0.07'%3E%3Cpolygon points='25,0 50,14.43 50,43.3 25,57.73 0,43.3 0,14.43'/%3E%3Cpolygon points='0,43.3 25,57.73 25,86.6 0,101.03 -25,86.6 -25,57.73'/%3E%3Cpolygon points='50,43.3 75,57.73 75,86.6 50,101.03 25,86.6 25,57.73'/%3E%3C/g%3E%3C/svg%3E"),radial-gradient(700px 360px at 90% 110%,rgba(15,122,82,.14),transparent 65%);background-size:56px 97px,auto}
    .legal-hero__inner{padding:64px 0 48px}.legal-hero .kicker{margin-bottom:10px}.legal-hero h1{font-size:clamp(2.3rem,5.2vw,3.9rem);line-height:1.1;letter-spacing:-.015em;margin:0;max-width:20ch}.legal-hero p{max-width:66ch;color:var(--muted);font-size:1.1rem;line-height:1.6;margin:18px 0 0}
    .legal-tabs{display:inline-flex;gap:5px;margin-top:28px;padding:5px;background:rgba(255,255,255,.82);border:1px solid var(--line);border-radius:999px}.legal-tabs a{padding:8px 17px;border-radius:999px;color:var(--muted);text-decoration:none;font-size:.9rem;font-weight:600}.legal-tabs a:hover{color:var(--green)}.legal-tabs a.is-active{background:var(--green);color:#fff}
    .legal-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:start;padding-top:56px;padding-bottom:96px}
    .legal-toc{position:sticky;top:106px;min-width:0;padding:20px 0}.legal-toc strong{display:block;color:var(--ink);font:600 1rem Hanken,Arial,sans-serif;letter-spacing:-.01em;margin-bottom:14px}.legal-toc nav{display:flex;max-width:100%;flex-direction:column;gap:3px}.legal-toc a{display:block;padding:8px 12px;border-left:2px solid var(--line);color:var(--muted);text-decoration:none;font-size:.9rem;line-height:1.35}.legal-toc a:hover{border-color:var(--green);color:var(--green);background:rgba(214,239,227,.35)}
    .legal-content{min-width:0;max-width:820px}.legal-card{scroll-margin-top:104px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:clamp(24px,4vw,38px);box-shadow:0 16px 46px rgba(21,32,27,.045);margin-bottom:18px}.legal-card--primary{border-top:4px solid var(--green)}.legal-card__eyebrow{display:block;color:var(--green);font-size:.8rem;font-weight:600;letter-spacing:.025em;margin-bottom:9px}.legal-card h2{font-size:clamp(1.45rem,2.7vw,2rem);line-height:1.12;letter-spacing:-.012em;margin:0 0 18px}.legal-card h3{font-size:1.18rem;margin:0 0 8px}.legal-card p{color:var(--muted);line-height:1.68;margin:0}.legal-card p+p{margin-top:15px}.legal-card a{color:var(--green);text-underline-offset:3px}.legal-address{font-style:normal;color:var(--muted);line-height:1.72}.legal-address a{font-weight:600}
    .legal-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}.legal-facts--three{grid-template-columns:repeat(3,minmax(0,1fr))}.legal-facts>div{min-width:0;padding:18px;background:var(--paper);border:1px solid var(--line);border-radius:14px}.legal-facts dt{color:var(--muted-2);font-size:.78rem;font-weight:600;margin-bottom:7px}.legal-facts dd{color:var(--ink);line-height:1.55;margin:0;overflow-wrap:anywhere}.legal-facts dd a{font-weight:600;font-size:.95em}
    .legal-prose-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,44px)}.legal-prose-grid h2{font-size:1.45rem}.legal-prose-stack{display:grid;gap:26px}.legal-prose-stack>div+div{padding-top:26px;border-top:1px solid var(--line)}
    .legal-note{margin-top:22px;padding:18px 20px;border-left:4px solid var(--green);border-radius:0 12px 12px 0;background:var(--green-soft)}.legal-note strong{display:block;margin-bottom:4px}.legal-note p{color:var(--green-dark);font-size:.94rem}
    .legal-updated{color:var(--muted-2);font-size:.86rem;margin:26px 4px 0}.legal-footer{background:#fff}.legal-footer [aria-current="page"]{color:var(--ink);font-weight:600}
    @media(max-width:1050px){.workflow-layout{grid-template-columns:1fr}.workflow-copy{max-width:650px}.workflow-copy h2{max-width:15ch}}
    @media(max-width:900px){
      body{font-size:17px}.hero{padding:110px 0 64px}.hero__grid,.section__head,.product,.contact__grid,.workflow-layout{grid-template-columns:1fr}.hero__art svg{width:min(72%,340px)}.hero__art{order:-1;display:none}.product__visual{min-height:400px}.workflow-copy{max-width:650px}.workflow-copy h2{max-width:15ch}.cta__inner{grid-template-columns:1fr;gap:30px}.cta h2{max-width:20ch}.cta__content{max-width:44rem;padding:28px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.24)}.about{grid-template-columns:1fr;gap:26px}.about__card{justify-self:start}.contact__intro{position:static}.legal-layout{grid-template-columns:1fr;gap:24px;padding-top:32px}.legal-toc{position:static;padding:0}.legal-toc nav{flex-direction:row;flex-wrap:wrap;gap:7px}.legal-toc a{padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:#fff}.legal-content{max-width:none}
    }
    @media(max-width:760px){
      .principles{grid-template-columns:1fr}.workflow-layout{gap:34px}.dev-cycle{aspect-ratio:auto;display:grid;gap:12px}.dev-cycle:before,.dev-cycle__ring,.dev-cycle__center{display:none}.dev-cycle__node{position:relative!important;inset:auto!important;transform:none!important;width:100%;min-height:auto}.dev-cycle__node.is-active{transform:none!important}.contact-form__grid{grid-template-columns:1fr}.form-field--full{grid-column:auto}.footer__inner{grid-template-columns:1fr;text-align:center}.footer__legal{text-align:center}.footer__wordmark{justify-self:center}.legal-facts--three{grid-template-columns:1fr}
    }
    @media(max-width:560px){
      .container{width:min(100% - 32px,var(--max))}.search-trigger__label,.search-trigger kbd{display:none}.hero{padding:104px 0 48px}.hero h1{font-size:2.55rem;max-width:13ch}.hero__lead{font-size:1.05rem}.actions{flex-direction:column}.actions .btn{width:100%}.section{padding:70px 0}.section__head{gap:18px;margin-bottom:30px}.product__copy{padding:30px 24px}.product__visual{min-height:330px;padding:24px}.workflow-copy h2{font-size:2.35rem}.workflow-hint{margin-top:20px}.about{gap:24px;margin-top:22px}.about__card{grid-template-columns:104px minmax(0,1fr);column-gap:14px;padding:14px}.founder__media{width:104px}.about__name{font-size:1.08rem}.about__mail{font-size:.84rem}#ueber{padding:58px 0}.cta{padding:60px 0}.cta:after{width:460px;inset:auto -240px -220px auto}.cta h2{max-width:none;font-size:clamp(2.15rem,10vw,2.75rem)}.cta__content{gap:0;padding-top:24px}.cta p{font-size:1rem}.cta .btn--light{width:100%;margin-top:24px}.contact-form{padding:22px 18px}.contact-form__footer{grid-template-columns:1fr}.contact-form__submit{width:100%}.form-status.is-success,.form-status.is-error{grid-column:auto}.legal-header__inner{height:66px}.legal-header__back span:last-child{display:none}.legal-header__context{font-size:.84rem}.legal-page .wordmark{font-size:1.1rem}.legal-hero__inner{padding:46px 0 36px}.legal-hero h1{font-size:2.75rem}.legal-hero p{font-size:1rem}.legal-tabs{width:100%}.legal-tabs a{flex:1;text-align:center}.legal-layout{padding-bottom:66px}.legal-toc strong{margin-bottom:10px}.legal-toc nav{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px}.legal-toc a{white-space:nowrap}.legal-card{padding:22px 20px;border-radius:16px}.legal-facts,.legal-facts--three,.legal-prose-grid{grid-template-columns:1fr}.legal-prose-grid>div+div{padding-top:24px;border-top:1px solid var(--line)}
    }
    @media(hover:none){.founder__photo{filter:grayscale(0)}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.founder__photo,.product__screenshot,.dev-cycle__node,.cycle-status,.drawer,.overlay,.drawer__link,.search__result,.contact-form input,.contact-form select,.contact-form textarea{transition:none!important}.btn:hover{transform:none}.contact-form__submit.is-loading [data-submit-icon]{animation:none}.product__visual:hover .product__screenshot{transform:rotate(-1.2deg)}.founder__media:hover .founder__photo,.founder__media:focus-within .founder__photo{transform:none}}

    
    
    .gravur-stage{position:fixed;inset:0;z-index:80;display:none;pointer-events:none}
    .gravur-stage:before{content:"";position:absolute;inset:0;background-color:var(--paper);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='50' height='86.6' viewBox='0 0 50 86.6'%3E%3Cg fill='none' stroke='%230f7a52' stroke-width='1.3' opacity='0.08'%3E%3Cpolygon points='25,0 50,14.43 50,43.3 25,57.73 0,43.3 0,14.43'/%3E%3Cpolygon points='0,43.3 25,57.73 25,86.6 0,101.03 -25,86.6 -25,57.73'/%3E%3Cpolygon points='50,43.3 75,57.73 75,86.6 50,101.03 25,86.6 25,57.73'/%3E%3C/g%3E%3C/svg%3E"),radial-gradient(820px 560px at 88% 108%,rgba(15,122,82,.16),transparent 62%),radial-gradient(620px 480px at 6% -6%,rgba(255,255,255,.7),transparent 60%);background-size:56px 97px,auto,auto;background-repeat:repeat,no-repeat,no-repeat}
    .gravur-camera{position:absolute;inset:0;display:grid;place-items:center;padding-bottom:9vh}
    .gravur-field{position:absolute;inset:0;width:100%;height:100%;transform:translate3d(calc(var(--mx,0)*-8px),calc(var(--my,0)*-6px),0)}
    .gravur-field polygon{fill:none;stroke:#0f7a52;stroke-width:1.6;opacity:.12}
    .gravur-center{position:relative;display:grid;place-items:center;transform:translate3d(calc(var(--mx,0)*10px),calc(var(--my,0)*7px),0)}
    .gravur-center>*{grid-area:1/1}
    .gravur-rays{width:min(176%,132vh);aspect-ratio:1;pointer-events:none}
    .gravur-rays .ray-ring{fill:none;stroke:#0f7a52;stroke-width:1;opacity:.3}
    .gravur-rays .ray-ring--rail2{opacity:.22}
    .gravur-rays .ray-t line{stroke:#0f7a52;stroke-width:1.1;stroke-linecap:round;opacity:.2}
    .gravur-rays .ray-l{stroke:#0f7a52;stroke-width:1.4;stroke-linecap:round;opacity:.32}
    .gravur-rays .ray-rot{transform-box:fill-box;transform-origin:center}
    .gravur-disc{width:min(52vh,480px);aspect-ratio:1;border-radius:50%;background:var(--green);box-shadow:0 30px 80px rgba(15,122,82,.3);opacity:0}
    .gravur-disc svg{display:block;width:100%;height:100%}
    .gravur-disc svg *{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
    .gravur-disc svg .fein{stroke-width:1.8}
    .gravur-disc svg clipPath *{stroke:none}
    .gravur-disc .s{stroke-dasharray:101;stroke-dashoffset:101}
    .gravur-disc :is(.rauch,.ruf,.vogel3,.fisch){opacity:0}
    .gravur-disc .wippt,.gravur-disc .baum{transform-box:fill-box;transform-origin:50% 100%}
    .gravur-disc :is(.feder1,.feder2,.feder3){transform-box:fill-box;transform-origin:0% 85%}
    .gravur-disc .fisch{transform-box:fill-box;transform-origin:50% 50%}
    .gravur-title{position:absolute;left:50%;bottom:7vh;width:min(94vw,980px);text-align:center;transform:translate(calc(-50% + var(--mx,0)*16px),calc(var(--my,0)*10px))}
    .gravur-kicker{margin:0 0 10px;color:var(--green);font:600 1.02rem/1.3 Hanken,Arial,sans-serif;letter-spacing:.005em;opacity:0}
    .gravur-motto{margin:0;font-family:Hanken,Arial,sans-serif;font-weight:600;font-size:clamp(2rem,4vw,3.3rem);line-height:1.14;letter-spacing:-.014em;color:var(--ink);text-wrap:balance}
    .gravur-motto .mw{display:inline-block;opacity:0}
    .gravur-skip{position:fixed;right:22px;bottom:20px;z-index:81;min-height:40px;padding:8px 16px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font:600 .8rem/1.2 Hanken,Arial,sans-serif;cursor:pointer;opacity:0;pointer-events:none}
    .gravur-skip:hover{border-color:var(--green);color:var(--green)}
    .intro-play .gravur-skip{pointer-events:auto}
    .intro-done .gravur-skip{display:none}
    @media (max-width:760px){
      .gravur-disc{width:min(72vw,340px)}
      .gravur-rays{width:200%}
      .gravur-title{bottom:5vh}
      .gravur-motto{font-size:clamp(1.6rem,7vw,2.2rem)}
    }
    @media (prefers-reduced-motion:no-preference){
      .intro-play .gravur-stage{display:block}
      .intro-play .gravur-skip{animation:gravur-fade .4s ease .35s both}
      .intro-play .hero__art svg[role="img"]{opacity:0}
      .intro-play.intro-done .hero__art svg[role="img"]{opacity:1;transition:opacity .45s ease}
      
      .intro-play .gravur-rays .ray-ring{stroke-dasharray:1;animation:gravur-draw 1.1s cubic-bezier(.3,.5,.3,1) .15s both}
      .intro-play .gravur-rays .ray-ring--rail1{animation-delay:.32s}
      .intro-play .gravur-rays .ray-ring--rail2{animation-duration:1.25s;animation-delay:.44s}
      .intro-play .gravur-rays .ray-t line{stroke-dasharray:1;animation:gravur-draw .45s cubic-bezier(.3,.5,.3,1) both}
      .intro-play .gravur-rays .ray-t1 line{animation-delay:.25s}
      .intro-play .gravur-rays .ray-t2 line{animation-delay:.32s}
      .intro-play .gravur-rays .ray-t3 line{animation-delay:.39s}
      .intro-play .gravur-rays .ray-t4 line{animation-delay:.46s}
      .intro-play .gravur-rays .ray-t5 line{animation-delay:.53s}
      .intro-play .gravur-rays .ray-t6 line{animation-delay:.6s}
      .intro-play .gravur-rays .ray-t7 line{animation-delay:.67s}
      .intro-play .gravur-rays .ray-t8 line{animation-delay:.74s}
      .intro-play .gravur-rays .ray-l{stroke-dasharray:1;animation:gravur-draw .5s cubic-bezier(.3,.5,.3,1) both}
      .intro-play .gravur-rays .ray-l--1{animation-delay:.4s}
      .intro-play .gravur-rays .ray-l--2{animation-delay:.46s}
      .intro-play .gravur-rays .ray-l--3{animation-delay:.52s}
      .intro-play .gravur-rays .ray-l--4{animation-delay:.58s}
      .intro-play .gravur-rays .ray-l--5{animation-delay:.64s}
      .intro-play .gravur-rays .ray-l--6{animation-delay:.7s}
      .intro-play .gravur-rays .ray-l--7{animation-delay:.76s}
      .intro-play .gravur-rays .ray-l--8{animation-delay:.82s}
      .intro-play .gravur-rays .ray-l--9{animation-delay:.88s}
      .intro-play .gravur-rays .ray-l--10{animation-delay:.94s}
      .intro-play .gravur-rays .ray-l--11{animation-delay:1s}
      .intro-play .gravur-rays .ray-l--12{animation-delay:1.06s}
      .intro-play .gravur-field polygon{stroke-dasharray:1;animation:gravur-draw .55s cubic-bezier(.3,.5,.3,1) both}
      .intro-play .gravur-field .field-f1 polygon{animation-delay:.15s}
      .intro-play .gravur-field .field-f2 polygon{animation-delay:.3s}
      .intro-play .gravur-field .field-f3 polygon{animation-delay:.45s}
      .intro-play .gravur-field .field-f4 polygon{animation-delay:.6s}
      .intro-play .gravur-field .field-f5 polygon{animation-delay:.75s}
      
      .intro-play .gravur-disc{opacity:1;animation:gravur-disc .7s cubic-bezier(.2,.65,.25,1) .55s backwards}
      .intro-play .gravur-disc .s{animation:ort-zeichnen .6s cubic-bezier(.3,.5,.3,1) 2.75s both}
      .intro-play .gravur-disc circle.s{animation-duration:.8s;animation-delay:.9s}
      .intro-play .gravur-disc .d1{animation-delay:1.05s}
      .intro-play .gravur-disc .d2{animation-delay:1.3s}
      .intro-play .gravur-disc .d3{animation-delay:1.55s}
      .intro-play .gravur-disc .d4{animation-delay:1.8s}
      .intro-play .gravur-disc .d5{animation-delay:2.05s}
      .intro-play .gravur-disc .d6{animation-delay:2.3s}
      .intro-play .gravur-disc .d7{animation-delay:2.55s}
      
      .intro-play .gravur-disc .welle1{animation:ort-zeichnen .6s cubic-bezier(.3,.5,.3,1) 2.75s both,ort-treiben1 4.6s ease-in-out 3.6s infinite alternate}
      .intro-play .gravur-disc .welle2{animation:ort-zeichnen .6s cubic-bezier(.3,.5,.3,1) 2.8s both,ort-treiben2 5.8s ease-in-out 3.7s infinite alternate}
      .intro-play .gravur-disc .welle3{animation:ort-zeichnen .6s cubic-bezier(.3,.5,.3,1) 2.85s both,ort-treiben3 7s ease-in-out 3.8s infinite alternate}
      .intro-play .gravur-disc .vogel1{animation:ort-zeichnen .6s cubic-bezier(.3,.5,.3,1) 2.6s both,ort-schweben1 5.2s ease-in-out 3.6s infinite alternate}
      .intro-play .gravur-disc .vogel2{animation:ort-zeichnen .6s cubic-bezier(.3,.5,.3,1) 2.7s both,ort-schweben2 6.4s ease-in-out 3.9s infinite alternate}
      .intro-play .gravur-disc .feder1{animation:ort-zeichnen .6s cubic-bezier(.3,.5,.3,1) 2.85s both,ort-faechern 2.8s ease-in-out 3.5s infinite alternate}
      .intro-play .gravur-disc .feder2{animation:ort-zeichnen .6s cubic-bezier(.3,.5,.3,1) 2.9s both,ort-faechern 3s ease-in-out 3.65s infinite alternate}
      .intro-play .gravur-disc .feder3{animation:ort-zeichnen .6s cubic-bezier(.3,.5,.3,1) 2.95s both,ort-faechern 3.2s ease-in-out 3.8s infinite alternate}
      .intro-play .gravur-disc .baum1{animation:ort-wehen1 4.8s ease-in-out 3.4s infinite alternate}
      .intro-play .gravur-disc .baum2{animation:ort-wehen2 6s ease-in-out 3.9s infinite alternate}
      .intro-play .gravur-disc .rauch1{animation:ort-rauchen 3.8s ease-out 3.6s infinite}
      .intro-play .gravur-disc .rauch2{animation:ort-rauchen 3.8s ease-out 4.4s infinite}
      .intro-play .gravur-disc .vogel3{animation:ort-einflug 1.6s ease-out 3.4s both,ort-schweben1 5.6s ease-in-out 5.2s infinite alternate}
      .intro-play .gravur-disc .wippt{animation:ort-wippen 3.2s ease-in-out 3.4s infinite}
      .intro-play .gravur-disc .ruf{animation:ort-rufen 3.2s ease-in-out 3.6s infinite}
      .intro-play .gravur-disc .fisch{animation:ort-fischsprung 6.4s linear .9s infinite}
      
      .intro-play .gravur-kicker{opacity:1;animation:gravur-fade .5s ease 2.9s backwards}
      .intro-play .gravur-motto .mw{opacity:1}
      .intro-play .gravur-motto .mw1{animation:gravur-rise .65s cubic-bezier(.2,.65,.25,1) 3.1s backwards}
      .intro-play .gravur-motto .mw2{animation:gravur-rise .65s cubic-bezier(.2,.65,.25,1) 3.34s backwards}
      .intro-play .gravur-motto .mw3{animation:gravur-rise .65s cubic-bezier(.2,.65,.25,1) 3.58s backwards}
      
      .intro-play .gravur-rays .ray-rot{animation:gravur-spin 240s linear 3.2s infinite}
      
      .intro-dive .gravur-camera{transform:scale(2.3);opacity:0;transition:transform 1.05s cubic-bezier(.7,0,.2,1),opacity .7s ease .3s}
      .intro-dive .gravur-stage:before{opacity:0;transition:opacity .6s ease .3s}
      .intro-dive .gravur-skip{opacity:0;transition:opacity .25s ease;animation:none;pointer-events:none}
      
      .intro-play .hero .kicker{animation:gravur-rise .55s cubic-bezier(.2,.65,.25,1) 6.05s both}
      .intro-play .hero h1{animation:gravur-rise .6s cubic-bezier(.2,.65,.25,1) 6.15s both}
      .intro-play .hero__lead{animation:gravur-rise .6s cubic-bezier(.2,.65,.25,1) 6.27s both}
      .intro-play .hero .actions{animation:gravur-rise .6s cubic-bezier(.2,.65,.25,1) 6.39s both}
      .intro-done .gravur-stage{display:none}
      .intro-skip .hero :is(.kicker,h1,.hero__lead,.actions){animation:none}
    }
    @keyframes gravur-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
    @keyframes gravur-fade{from{opacity:0}to{opacity:1}}
    @keyframes gravur-disc{from{opacity:0;transform:scale(.82)}to{opacity:1;transform:none}}
    @keyframes gravur-spin{to{transform:rotate(360deg)}}
    @keyframes gravur-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

    
    .ort-karte{display:grid;grid-template-columns:minmax(240px,370px) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:center;background:var(--green);color:#fff;border-radius:24px;padding:clamp(28px,4vw,48px);margin-top:26px;box-shadow:0 18px 50px rgba(10,92,61,.16);transition:box-shadow .35s}
    .ort-karte:hover{box-shadow:0 26px 64px rgba(10,92,61,.3)}
    .ort-karte:focus-visible{outline:3px solid #fff;outline-offset:2px;box-shadow:0 0 0 6px var(--green-dark)}
    .ort-medaillon{width:100%}
    .ort-medaillon svg{display:block;width:100%;height:auto}
    .ort-daten h3{font:600 clamp(1.4rem,2.4vw,1.9rem)/1.18 Hanken,Arial,sans-serif;letter-spacing:-.01em;color:#fff;margin:0 0 12px}
    .ort-mail{display:inline-block;color:#fff;font-weight:600;font-size:1.06rem;text-decoration:none;border-bottom:3px solid var(--green-soft);padding-bottom:3px;margin-bottom:22px;overflow-wrap:anywhere;transition:color .2s}
    .ort-mail:hover{color:var(--green-soft)}
    .ort-adresse{margin:0;line-height:1.62;color:rgba(255,255,255,.78)}
    @media(max-width:760px){.ort-karte{grid-template-columns:1fr}.ort-medaillon{max-width:300px;margin:0 auto}.ort-daten{text-align:center}}
    .ort-karte svg *{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
    .ort-karte svg .fein{stroke-width:1.4;stroke:rgba(255,255,255,.88)}
    .ort-karte svg clipPath *{stroke:none}
    
    .ort-karte .s{stroke-dasharray:101;stroke-dashoffset:0}
    @keyframes ort-zeichnen{from{stroke-dashoffset:101}to{stroke-dashoffset:0}}
    .ort-karte .wippt{transform-box:fill-box;transform-origin:50% 100%}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .wippt{animation:ort-wippen 3.2s ease-in-out .25s infinite}
    @keyframes ort-wippen{0%,100%{transform:rotate(0)}12%{transform:rotate(-2.6deg)}24%{transform:rotate(1.4deg)}36%{transform:rotate(0)}}
    .ort-karte .rauch,.ort-karte .ruf,.ort-karte .vogel3,.ort-karte .fisch{opacity:0}
    .ort-karte .baum{transform-box:fill-box;transform-origin:50% 100%}
    .ort-karte .feder1,.ort-karte .feder2,.ort-karte .feder3{transform-box:fill-box;transform-origin:0% 85%}
    .ort-karte .fisch{transform-box:fill-box;transform-origin:50% 50%}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .welle1{animation:ort-treiben1 4.6s ease-in-out .2s infinite alternate}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .welle2{animation:ort-treiben2 5.8s ease-in-out .3s infinite alternate}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .welle3{animation:ort-treiben3 7s ease-in-out .4s infinite alternate}
    @keyframes ort-treiben1{from{transform:translateX(0)}to{transform:translateX(9px)}}
    @keyframes ort-treiben2{from{transform:translateX(0)}to{transform:translateX(-8px)}}
    @keyframes ort-treiben3{from{transform:translateX(0)}to{transform:translateX(6px)}}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .baum1{animation:ort-wehen1 4.8s ease-in-out .15s infinite alternate}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .baum2{animation:ort-wehen2 6s ease-in-out .4s infinite alternate}
    @keyframes ort-wehen1{from{transform:rotate(-.6deg)}to{transform:rotate(1.6deg)}}
    @keyframes ort-wehen2{from{transform:rotate(.5deg)}to{transform:rotate(-1.5deg)}}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .rauch1{animation:ort-rauchen 3.8s ease-out .3s infinite}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .rauch2{animation:ort-rauchen 3.8s ease-out 1.7s infinite}
    @keyframes ort-rauchen{0%{opacity:0;transform:translateY(4px)}18%{opacity:.85}70%{opacity:.5}100%{opacity:0;transform:translateY(-16px)}}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .vogel1{animation:ort-schweben1 5.2s ease-in-out .3s infinite alternate}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .vogel2{animation:ort-schweben2 6.4s ease-in-out .5s infinite alternate}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .vogel3{animation:ort-einflug 1.6s ease-out .35s both,ort-schweben1 5.6s ease-in-out 1.95s infinite alternate}
    @keyframes ort-schweben1{from{transform:translate(0,0)}to{transform:translate(4px,-5px)}}
    @keyframes ort-schweben2{from{transform:translate(0,0)}to{transform:translate(-5px,-4px)}}
    @keyframes ort-einflug{from{opacity:0;transform:translate(30px,12px)}to{opacity:1;transform:translate(0,0)}}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .feder1{animation:ort-faechern 2.8s ease-in-out .3s infinite alternate}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .feder2{animation:ort-faechern 3s ease-in-out .45s infinite alternate}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .feder3{animation:ort-faechern 3.2s ease-in-out .6s infinite alternate}
    @keyframes ort-faechern{from{transform:rotate(0)}to{transform:rotate(-4deg)}}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .ruf{animation:ort-rufen 3.2s ease-in-out .45s infinite}
    @keyframes ort-rufen{0%,8%{opacity:0}14%,30%{opacity:1}38%,100%{opacity:0}}
    .ort-karte:is(:hover,:focus-visible,:focus-within) .fisch{animation:ort-fischsprung 6.4s linear .9s infinite}
    @keyframes ort-fischsprung{0%,54%{opacity:0;transform:translate(2px,8px) rotate(6deg)}60%{opacity:1;transform:translate(-4px,-16px) rotate(-16deg)}66%{transform:translate(-11px,-24px) rotate(-2deg)}72%{opacity:1;transform:translate(-18px,-14px) rotate(14deg)}77%{opacity:0;transform:translate(-24px,6px) rotate(24deg)}100%{opacity:0}}
    @media(prefers-reduced-motion:reduce){.ort-karte,.ort-karte *{animation:none!important;transition:none!important}}
    
    .sprachwahl{position:relative;display:block;margin:0 0 14px}
    .sprachwahl .sprachwahl__knopf{text-align:left}
    .sprachwahl__knopf{display:inline-flex;align-items:center;gap:9px;min-height:40px;padding:0 16px;background:#fff;border:1px solid var(--line);border-radius:999px;font:600 .95rem Hanken,Arial,sans-serif;color:var(--ink);cursor:pointer;transition:border-color .15s}
    .sprachwahl__knopf:hover{border-color:var(--green)}
    .sprachwahl__knopf svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6}
    .sprachwahl__pfeil{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-1px,-1px);transition:transform .18s}
    .sprachwahl__knopf[aria-expanded="true"] .sprachwahl__pfeil{transform:rotate(225deg) translate(-2px,-2px)}
    .sprachwahl__menue{position:absolute;bottom:calc(100% + 8px);right:0;min-width:176px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 46px rgba(21,32,27,.16);padding:7px;display:flex;flex-direction:column;gap:2px;z-index:60}
    .sprachwahl__menue[hidden]{display:none}
    .sprachwahl__menue button{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;padding:10px 13px;background:none;border:0;border-radius:9px;font:600 .98rem Hanken,Arial,sans-serif;color:var(--ink);text-align:left;cursor:pointer}
    .sprachwahl__menue button:hover{background:var(--paper)}
    .sprachwahl__menue button[aria-selected="true"]{color:var(--green-dark)}
    .sprachwahl__menue button[aria-selected="true"]::after{content:"";width:11px;height:6px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg) translate(1px,-1px)}
    
    .drawer__sprachen{display:flex;gap:4px;margin-top:2px;padding:3px;border:1px solid var(--line);border-radius:13px}
    .drawer__sprachknopf{flex:1;min-height:40px;padding:0 10px;border:0;border-radius:10px;background:none;font:600 1.02rem Hanken,Arial,sans-serif;color:var(--muted-2);cursor:pointer;transition:background .15s,color .15s}
    .drawer__sprachknopf:hover{background:#e9f5ef;color:var(--green)}
    .drawer__sprachknopf[aria-pressed="true"]{background:#e9f5ef;color:var(--green-dark)}
    .drawer__sprachknopf:focus-visible{outline:2px solid var(--green);outline-offset:2px}

.fehler-page .legal-hero__inner{padding-bottom:72px}
.fehler-page .legal-hero p{max-width:60ch}
.fehler-page .fehler-en{margin-top:8px;color:var(--muted);font-size:.95rem}
.fehler-page .legal-hero .actions{margin-top:30px}
@media(min-width:561px){.fehler-page .legal-hero{min-height:calc(100svh - 74px);display:flex;align-items:center}}
