/* Farben, Grundlayout und lokale Systemschrift */
:root {
  --cream:#f8f5ee;
  --paper:#fffdf8;
  --sand:#ece6da;
  --sage:#546b52;
  --sage-light:#e5ebdf;
  --ink:#29352b;
  --muted:#596157;
  --line:#d8dbcf;
  --error:#a13027;
  --radius:22px;
  --bs-body-font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*,*::before,*::after {
  box-sizing:border-box;
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:30px;
}
body {
  margin:0;
  background:var(--cream);
  color:var(--ink);
  font-family:var(--bs-body-font-family);
  font-size:16px;
  line-height:1.65;
}
h1,h2,h3,p {
  margin-top:0;
}
h1,h2,h3 {
  line-height:1.12;
  letter-spacing:-.045em;
  font-weight:600;
}
h1 {
  font-size:clamp(2.7rem,5.3vw,5rem);
  margin-bottom:24px;
}
h2 {
  font-size:clamp(2.1rem,3.5vw,3.4rem);
  margin-bottom:26px;
}
h3 {
  font-size:1.4rem;
  letter-spacing:-.025em;
  margin-bottom:14px;
}
p {
  margin-bottom:20px;
}
a {
  color:inherit;
  text-underline-offset:4px;
}
button,input,textarea,select {
  font:inherit;
}
button,a,input,textarea,select,summary {
  -webkit-tap-highlight-color:transparent;
}
button {
  cursor:pointer;
}
button:disabled {
  cursor:wait;
  opacity:.65;
}
img,svg {
  vertical-align:middle;
}
img {
  max-width:100%;
  height:auto;
}
svg {
  flex-shrink:0;
}
fieldset {
  padding:0;
  margin:0;
  border:0;
  min-width:0;
}
legend {
  font-weight:600;
  padding:0;
  margin-bottom:12px;
  font-size:.95rem;
  float:none;
  width:auto;
}
a:hover {
  color:var(--sage);
}
:focus-visible {
  outline:3px solid #375d79;
  outline-offset:4px;
}
[hidden] {
  display:none!important;
}
.container {
  max-width:1184px;
}
.section-space {
  padding-top:85px;
  padding-bottom:85px;
}
.eyebrow {
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.72rem;
  font-weight:700;
  color:var(--sage);
  margin-bottom:20px;
  display:flex;
  gap:10px;
  align-items:center;
}
.small-dot {
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--sage);
  display:inline-block;
  flex-shrink:0;
}
.btn {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  min-height:48px;
  border-radius:10px;
  padding:14px 20px;
  text-decoration:none;
  font-weight:600;
  font-size:.9rem;
  line-height:1.4;
  border:1px solid transparent;
  transition:background .18s,color .18s,transform .18s;
}
.btn:hover {
  transform:translateY(-2px);
}
.btn-primary {
  background:var(--sage);
  color:#fff;
}
.btn-primary:hover {
  background:#40553e;
  color:#fff;
}
.btn-quiet {
  border-color:var(--line);
  background:transparent;
}
.btn-quiet:hover {
  background:var(--sage-light);
  color:var(--ink);
}
.btn-text {
  padding-left:0;
  padding-right:0;
  text-decoration:underline;
  text-underline-offset:6px;
  background:transparent;
  color:var(--ink);
}
.btn-text:hover {
  color:var(--sage);
}
.skip-link {
  position:fixed;
  top:-100px;
  left:20px;
  padding:10px 18px;
  background:var(--paper);
  z-index:100;
  border:2px solid var(--sage);
}
.skip-link:focus {
  top:12px;
}
.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.site-header {
  border-bottom:1px solid var(--line);
}
.header-inner {
  min-height:95px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.brand {
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  font-weight:600;
  font-size:.82rem;
  line-height:1.3;
  letter-spacing:-.015em;
}
.main-nav {
  display:flex;
  gap:28px;
  font-size:.85rem;
}
.main-nav a {
  text-decoration:none;
  padding:12px 0;
}
.header-share {
  font-size:.8rem;
  min-height:44px;
  padding:10px 14px;
}
.hero {
  padding-top:72px;
  padding-bottom:78px;
}
.hero-copy {
  position:relative;
  z-index:1;
}
.accent-word {
  color:var(--sage);
}
.hero-facts {
  font-size:.93rem;
  font-weight:650;
  line-height:1.65;
  border-left:2px solid #b7c5ac;
  padding-left:13px;
  margin-bottom:25px;
  max-width:580px;
}
.hero-facts span {
  padding:0 4px;
}
.hero-intro {
  font-size:1.14rem;
  line-height:1.65;
  max-width:535px;
  margin-bottom:13px;
}
.hero-invitation {
  max-width:515px;
  color:var(--muted);
  font-size:.95rem;
}
.hero-actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px 24px;
  margin-top:28px;
}
.hero-actions .btn-primary {
  padding-left:19px;
  padding-right:19px;
}
.hero-illustration {
  position:relative;
  max-width:460px;
  margin-left:auto;
  overflow:hidden;
  border-radius:180px 180px 20px 20px;
  background:var(--sand);
}
.hero-illustration img {
  display:block;
  width:100%;
  aspect-ratio:480/500;
}
.illustration-note {
  position:absolute;
  bottom:24px;
  left:0;
  right:0;
  text-align:center;
  color:#56614f;
  font-size:.75rem;
  letter-spacing:.035em;
}
.search-section {
  background:#efede5;
  border-top:1px solid #e5e3d8;
  border-bottom:1px solid #e5e3d8;
}
.section-heading {
  margin-bottom:34px;
}
.search-card {
  height:100%;
  min-height:242px;
  padding:28px;
  background:var(--paper);
  border:1px solid #dedfd3;
  border-radius:var(--radius);
  position:relative;
}
.card-number {
  position:absolute;
  right:27px;
  top:25px;
  color:#68715f;
  font-size:.7rem;
  letter-spacing:.1em;
}
.card-icon {
  fill:none;
  stroke:var(--sage);
  stroke-width:1.45;
  stroke-linecap:round;
  stroke-linejoin:round;
  margin-bottom:26px;
}
.search-card h3 {
  font-size:1.4rem;
}
.search-card p {
  color:var(--muted);
  font-size:.94rem;
  margin-bottom:0;
}
.search-note {
  color:var(--muted);
  max-width:840px;
  margin:27px 0 0;
  font-size:.94rem;
}
.about-copy {
  max-width:560px;
}
.about-copy p:not(.eyebrow) {
  font-size:1.03rem;
  line-height:1.75;
}
.documents-card {
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:35px;
  margin-top:24px;
}
.documents-card h3 {
  font-size:1.55rem;
}
.documents-card p {
  font-size:.94rem;
  color:var(--muted);
}
.document-mark {
  display:flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  background:var(--sage-light);
  border-radius:50%;
  color:var(--sage);
  margin-bottom:26px;
  font-size:1.3rem;
}
.document-tags {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.document-tags span {
  border:1px solid var(--line);
  padding:4px 9px;
  border-radius:5px;
  font-size:.71rem;
  color:var(--muted);
}
.garden-card {
  display:flex;
  align-items:center;
  gap:28px;
  background:var(--sage-light);
  border-radius:var(--radius);
  padding:30px 35px;
  margin-top:38px;
  color:var(--ink);
}
.garden-card svg {
  color:var(--sage);
}
.garden-card h3 {
  font-size:1.4rem;
  margin-bottom:9px;
}
.garden-card p {
  font-size:.94rem;
  max-width:860px;
  margin-bottom:0;
}
.not-listed {
  display:flex;
  gap:15px;
  padding:34px 8px 0;
  align-items:flex-start;
}
.not-listed .small-dot {
  margin-top:9px;
}
.not-listed h3 {
  font-size:1.05rem;
  letter-spacing:-.01em;
  line-height:1.45;
  margin-bottom:8px;
}
.not-listed p {
  color:var(--muted);
  font-size:.94rem;
  margin-bottom:0;
  max-width:850px;
}
.faq-section {
  background:#efede5;
  border-block:1px solid #e5e3d8;
}
.faq-list details {
  border-bottom:1px solid #d3d8c9;
}
.faq-list details:first-child {
  border-top:1px solid #d3d8c9;
}
.faq-list summary {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  list-style:none;
  cursor:pointer;
  font-size:1rem;
  font-weight:550;
  line-height:1.5;
  padding:21px 2px;
}
.faq-list summary::-webkit-details-marker {
  display:none;
}
.faq-toggle {
  font-size:1.6rem;
  line-height:1;
  font-weight:400;
  color:var(--sage);
  transition:transform .15s;
}
.faq-list details[open] .faq-toggle {
  transform:rotate(45deg);
}
.faq-list details p {
  font-size:.94rem;
  color:var(--muted);
  padding:0 38px 6px 2px;
  max-width:690px;
}
.contact-copy {
  padding-right:45px;
}
.contact-copy h2 {
  font-size:clamp(2.1rem,3.6vw,3.1rem);
}
.contact-copy>p:not(.eyebrow) {
  color:var(--muted);
  font-size:.98rem;
}
.direct-contact {
  margin-top:28px;
  margin-bottom:26px;
  border-top:1px solid var(--line);
}
.direct-contact>a {
  display:block;
  text-decoration:none;
  padding:19px 0;
  border-bottom:1px solid var(--line);
}
.contact-label {
  display:block;
  font-size:.72rem;
  color:var(--muted);
  margin-bottom:3px;
}
.direct-contact>a>span:last-child {
  font-size:1.09rem;
  font-weight:600;
  display:flex;
  justify-content:space-between;
  gap:6px;
  overflow-wrap:anywhere;
}
.messenger-label {
  font-size:.8rem!important;
  margin-bottom:12px;
}
.messenger-links {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.messenger-links .btn {
  padding:10px 12px;
  font-size:.77rem;
  min-height:44px;
  gap:5px;
}
.form-card {
  background:var(--paper);
  border:1px solid #d8ddcf;
  border-radius:var(--radius);
  padding:34px;
  box-shadow:0 8px 35px #283b2510;
}
.form-card h3 {
  font-size:1.5rem;
}
.form-intro {
  font-size:.91rem;
  color:var(--muted);
  margin-bottom:14px;
}
.required-note {
  font-size:.73rem;
  color:var(--muted);
  margin-bottom:24px;
}
.kind-fieldset {
  margin-bottom:24px;
}
.kind-options {
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:10px;
}
.kind-option {
  display:flex;
  gap:10px;
  align-items:center;
  padding:14px 12px!important;
  border:1px solid var(--line);
  border-radius:9px;
  font-size:.82rem!important;
  line-height:1.5;
  margin:0!important;
  cursor:pointer;
  min-height:72px;
}
.kind-option:has(input:checked) {
  border-color:var(--sage);
  background:#edf1e7;
}
.kind-option input,.check-label input {
  width:17px;
  height:17px;
  accent-color:var(--sage);
  flex-shrink:0;
  margin:0;
  min-height:0;
  padding:0;
}
label {
  display:block;
  font-size:.84rem;
  font-weight:550;
  margin-bottom:7px;
}
input:not([type=radio]):not([type=checkbox]):not([type=hidden]),select,textarea {
  display:block;
  width:100%;
  min-width:0;
  border:1px solid #b9c3b2;
  border-radius:8px;
  background:#fffefa;
  color:var(--ink);
  padding:11px 13px;
  font-size:.95rem;
  min-height:46px;
}
textarea {
  resize:vertical;
  line-height:1.6;
}
input:focus,textarea:focus,select:focus {
  border-color:var(--sage);
}
input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true] {
  border-color:var(--error);
  box-shadow:0 0 0 1px var(--error);
}
.field-hint {
  font-size:.76rem;
  color:var(--muted);
  line-height:1.6;
  margin-top:-4px;
  margin-bottom:0;
}
.optional {
  font-size:.72rem;
  color:var(--muted);
  font-weight:400;
}
.extra-fields {
  border-top:1px solid var(--line);
  padding-top:23px;
  margin-top:25px;
  margin-bottom:25px;
}
.extra-fields legend {
  padding-top:23px;
  margin-bottom:16px;
}
.availability-label {
  font-size:.84rem;
  font-weight:550;
  margin-bottom:6px;
}
.sub-label {
  font-weight:400;
  font-size:.75rem;
  color:var(--muted);
}
.check-label {
  display:flex;
  align-items:center;
  gap:10px;
  font-size:.84rem;
  font-weight:400;
  min-height:40px;
  margin:0;
}
.privacy-note {
  font-size:.73rem;
  color:var(--muted);
  margin:22px 0 19px;
  line-height:1.65;
}
.submit-btn {
  width:100%;
  justify-content:space-between;
}
.honey {
  position:absolute;
  left:-10000px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
}
.feedback {
  padding:16px 18px;
  border-radius:9px;
  background:var(--sage-light);
  margin-bottom:22px;
  font-size:.88rem;
  overflow-wrap:anywhere;
}
.feedback p {
  margin:0 0 8px;
}
.feedback ul {
  padding-left:20px;
  margin:0;
}
.feedback-error {
  background:#fbeee9;
  border:1px solid #dfb7a9;
  color:#7d281f;
}
.feedback-success {
  background:var(--sage-light);
  border:1px solid #b6c7aa;
}
.field-error {
  color:var(--error);
  font-size:.75rem;
  margin:5px 0 0;
}
.share-section {
  padding-bottom:70px;
}
.share-panel {
  border-radius:30px;
  background:#e6ebdc;
  display:grid;
  grid-template-columns:1fr 300px;
  gap:40px;
  align-items:center;
  padding:54px 60px;
}
.share-panel p:not(.eyebrow) {
  max-width:510px;
  font-size:.97rem;
}
.share-panel h2 {
  margin-bottom:20px;
}
.share-actions {
  display:flex;
  align-items:center;
  gap:25px;
  flex-wrap:wrap;
}
.share-art {
  justify-self:center;
  max-width:100%;
}
.manual-share {
  margin-top:18px;
  max-width:475px;
  font-size:.8rem;
}
.manual-share summary {
  cursor:pointer;
  padding:7px 0;
}
.manual-share input {
  margin:9px 0;
}
.manual-share p {
  font-size:.77rem!important;
  margin:10px 0 0;
}
.share-status {
  margin:12px 0 0;
  min-height:1.6em;
  color:#3d5434;
  font-size:.85rem!important;
}
.site-footer {
  border-top:1px solid var(--line);
  display:flex;
  flex-wrap:wrap;
  gap:18px 30px;
  align-items:center;
  padding-top:26px;
  padding-bottom:32px;
  color:var(--muted);
  font-size:.75rem;
}
.site-footer p {
  margin:0;
  margin-right:auto;
}
.site-footer a {
  text-decoration:none;
  min-height:36px;
  display:inline-flex;
  align-items:center;
}
.mobile-actions {
  display:none;
}
.secondary-header {
  padding-block:30px;
  border-bottom:1px solid var(--line);
}
.result-main {
  max-width:820px;
  padding-top:65px;
  padding-bottom:65px;
}
.result-main h1 {
  font-size:clamp(2rem,4vw,3.4rem);
}
.result-main .form-card {
  margin-top:30px;
}
.result-direct {
  margin-top:25px;
  font-size:.9rem;
}
.legal-copy {
  max-width:800px;
  padding-top:55px;
  padding-bottom:65px;
}
.legal-copy h1 {
  font-size:clamp(2.4rem,4vw,3.7rem);
}
.legal-copy h2 {
  font-size:1.4rem;
  margin-top:35px;
  margin-bottom:14px;
  letter-spacing:-.015em;
}
.legal-copy p,.legal-copy li {
  font-size:.95rem;
}
.config-missing {
  color:#8b3428;
  font-weight:600;
}
.legal-copy address {
  font-style:normal;
  white-space:pre-line;
}
@media(max-width:1199px) {
  .container {
    max-width:1050px;
  }
  .main-nav {
    gap:18px;
  }
  .hero-actions {
    gap:10px 20px;
  }
  .hero-actions .btn {
    font-size:.83rem;
  }
  .contact-copy {
    padding-right:25px;
  }
  .share-panel {
    padding:45px;
  }
}
@media(max-width:991px) {
  .container {
    max-width:760px;
  }
  .main-nav {
    display:none;
  }
  .header-inner {
    min-height:80px;
  }
  .hero {
    padding-top:50px;
    padding-bottom:52px;
  }
  .hero h1 {
    font-size:clamp(2.8rem,7vw,4.2rem);
  }
  .hero-intro {
    max-width:610px;
  }
  .hero-invitation {
    max-width:610px;
  }
  .hero-illustration {
    max-width:340px;
    margin:25px auto 0;
    border-radius:140px 140px 16px 16px;
  }
  .hero-illustration img {
    aspect-ratio:480/380;
    object-fit:cover;
    object-position:50% 37%;
  }
  .illustration-note {
    bottom:12px;
  }
  .section-space {
    padding-block:60px;
  }
  .search-card {
    padding:23px 19px;
  }
  .search-card h3 {
    font-size:1.17rem;
  }
  .search-card p {
    font-size:.87rem;
  }
  .documents-card {
    margin-top:0;
  }
  .about-copy {
    max-width:none;
  }
  .contact-copy {
    padding-right:12px;
  }
  .contact-copy h2 {
    max-width:540px;
  }
  .direct-contact {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
    border-top:0;
  }
  .direct-contact>a {
    border-top:1px solid var(--line);
  }
  .share-panel {
    grid-template-columns:1fr 180px;
    padding:35px;
    gap:15px;
  }
  .share-art {
    width:180px;
  }
  .form-card {
    padding:30px;
  }
  .share-section {
    padding-bottom:50px;
  }
}
@media(max-width:575px) {
  html {
    scroll-padding-top:20px;
  }
  .container {
    padding-left:22px;
    padding-right:22px;
  }
  .header-inner {
    gap:12px;
    min-height:76px;
  }
  .brand {
    gap:8px;
    font-size:.74rem;
  }
  .brand svg {
    width:34px;
    height:34px;
  }
  .header-share {
    font-size:.74rem;
    padding:9px 10px;
    gap:6px;
  }
  .header-share svg {
    width:16px;
  }
  .hero {
    padding-top:36px;
    padding-bottom:42px;
  }
  .eyebrow {
    font-size:.65rem;
    margin-bottom:17px;
  }
  .hero h1 {
    font-size:clamp(2.48rem,10.4vw,3.55rem);
    line-height:1.08;
    letter-spacing:-.055em;
    margin-bottom:22px;
  }
  .hero-facts {
    font-size:.82rem;
    margin-bottom:22px;
    max-width:330px;
  }
  .hero-intro {
    font-size:1rem;
    line-height:1.65;
  }
  .hero-invitation {
    font-size:.88rem;
  }
  .hero-actions {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:7px;
    margin-top:22px;
  }
  .hero-actions .btn-primary {
    width:100%;
    font-size:.8rem;
    justify-content:space-between;
    padding:14px;
  }
  .hero-actions .btn-text {
    font-size:.81rem;
    min-height:44px;
  }
  .hero-illustration {
    max-width:270px;
    margin-top:14px;
  }
  .hero-illustration img {
    aspect-ratio:480/315;
    object-position:50% 38%;
  }
  .illustration-note {
    font-size:.66rem;
    bottom:9px;
  }
  .section-space {
    padding-block:45px;
  }
  h2 {
    font-size:2.25rem;
    letter-spacing:-.045em;
    margin-bottom:24px;
  }
  .section-heading {
    margin-bottom:23px;
  }
  .search-card {
    min-height:0;
    padding:23px 24px;
  }
  .card-icon {
    margin-bottom:17px;
    width:29px;
    height:29px;
  }
  .search-card h3 {
    font-size:1.35rem;
    margin-bottom:10px;
  }
  .search-card p {
    font-size:.9rem;
  }
  .search-note {
    font-size:.88rem;
    margin-top:22px;
  }
  .about-copy p:not(.eyebrow) {
    font-size:.95rem;
  }
  .documents-card {
    padding:26px;
    margin-top:5px;
  }
  .document-mark {
    margin-bottom:20px;
  }
  .garden-card {
    padding:24px;
    display:block;
    margin-top:28px;
  }
  .garden-card svg {
    width:44px;
    height:44px;
    margin-bottom:15px;
  }
  .garden-card h3 {
    font-size:1.3rem;
  }
  .garden-card p {
    font-size:.89rem;
  }
  .not-listed {
    padding-top:27px;
  }
  .not-listed h3 {
    font-size:1rem;
  }
  .not-listed p {
    font-size:.88rem;
  }
  .faq-list summary {
    font-size:.93rem;
    padding-block:20px;
  }
  .faq-list details p {
    font-size:.88rem;
  }
  .contact-copy>p:not(.eyebrow) {
    font-size:.91rem;
  }
  .direct-contact {
    display:block;
    margin-top:23px;
  }
  .direct-contact>a {
    padding:15px 0;
  }
  .direct-contact>a+ a {
    border-top:0;
  }
  .form-card {
    padding:23px 18px;
    border-radius:17px;
  }
  .form-card h3 {
    font-size:1.3rem;
  }
  .form-intro {
    font-size:.86rem;
  }
  .kind-options {
    grid-template-columns:1fr;
  }
  .kind-option {
    min-height:55px;
    font-size:.83rem!important;
  }
  .kind-fieldset {
    margin-bottom:20px;
  }
  .form-card input,.form-card select,.form-card textarea {
    font-size:16px!important;
  }
  .extra-fields .optional {
    display:block;
    padding-top:5px;
  }
  .share-panel {
    display:block;
    padding:30px 24px;
    border-radius:22px;
  }
  .share-panel h2 {
    font-size:2.2rem;
  }
  .share-panel p:not(.eyebrow) {
    font-size:.9rem;
  }
  .share-art {
    display:none;
  }
  .share-actions {
    gap:6px;
    flex-direction:column;
    align-items:flex-start;
  }
  .share-actions .btn-primary {
    font-size:.8rem;
    width:100%;
    justify-content:space-between;
    padding:13px;
  }
  .share-section {
    padding-bottom:35px;
  }
  .site-footer {
    margin-inline:22px;
    width:calc(100% - 44px);
    padding:23px 0 90px;
    gap:3px 24px;
    line-height:1.5;
  }
  .site-footer p {
    width:100%;
    margin-bottom:4px;
  }
  .mobile-actions {
    display:grid;
    grid-template-columns:1fr 1fr;
    position:fixed;
    z-index:20;
    bottom:0;
    left:0;
    width:100%;
    background:var(--paper);
    border-top:1px solid #cdd4c4;
    padding:8px 16px calc(8px + env(safe-area-inset-bottom));
    gap:8px;
  }
  .mobile-actions a {
    min-height:43px;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:40px;
    text-decoration:none;
    border-radius:8px;
    font-size:.83rem;
    font-weight:600;
    background:var(--sage-light);
  }
  .mobile-actions a:first-child {
    background:var(--sage);
    color:#fff;
  }
  body {
    padding-bottom:env(safe-area-inset-bottom);
  }
  .secondary-page .site-footer {
    padding-bottom:30px;
  }
  .result-main {
    padding-block:38px;
  }
  .result-main .form-card {
    margin-inline:-7px;
  }
  .legal-copy {
    padding-top:35px;
  }
  .legal-copy h2 {
    font-size:1.3rem;
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto;
  }
  *,*::before,*::after {
    transition:none!important;
    animation:none!important;
  }
  .btn:hover {
    transform:none;
  }
}

/* Version 2: kräftigere Akzente und feste Navigation */
:root {
  --sage: #315d3e;
  --sage-light: #e2edda;
  --ink: #203c2c;
  --line: #ccd8c2;
  --lime: #d4ecb4;
  --header-offset: 116px;
}
html { scroll-padding-top: var(--header-offset); }
body { padding-top: 96px; }
.site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 50;
  background: rgba(248, 245, 238, .96);
  backdrop-filter: blur(16px);
  border-bottom-color: #b8c9aa;
  box-shadow: 0 3px 20px #243e2510;
  transition: box-shadow .2s, background .2s;
}
.site-header.is-scrolled { background: #fffdf8; box-shadow: 0 6px 24px #243e2520; }
.header-inner { min-height: 95px; }
.main-nav a { position: relative; font-weight: 550; }
.main-nav a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 6px;
  height: 3px;
  background: var(--sage);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .18s;
}
.main-nav a:hover::after, .main-nav a[aria-current="location"]::after { transform: scaleX(1); }
.header-share { border-color: var(--sage); background: var(--lime); }
.hero { padding-block: 66px 70px; position: relative; }
.hero .eyebrow { display: inline-flex; background: var(--lime); border-radius: 50px; padding: 7px 13px; color: #24472f; }
.hero h1 { font-weight: 720; letter-spacing: -.06em; }
.accent-word { position: relative; isolation: isolate; }
.accent-word::after {
  content: "";
  position: absolute;
  inset: auto -5px 4px;
  height: .15em;
  border-radius: 10px;
  background: #b6d786;
  transform: rotate(-2deg);
  z-index: -1;
}
.hero-facts { background: #e2edda; padding: 12px 16px; border-radius: 9px; border-left: 4px solid var(--sage); font-weight: 700; }
.hero-actions .btn-primary { box-shadow: 0 7px 0 #203e2a, 0 14px 28px #315d3e25; margin-bottom: 7px; }
.hero-actions .btn-primary:hover { transform: translateY(-3px); box-shadow: 0 10px 0 #203e2a, 0 17px 30px #315d3e30; }
.hero-actions .btn-primary:active { transform: translateY(3px); box-shadow: 0 3px 0 #203e2a; }
.hero-illustration { overflow: visible; border: 2px solid #9bb589; box-shadow: 16px 16px 0 #d5e7bd; margin-right: 16px; }
.hero-illustration img { border-radius: 180px 180px 18px 18px; }
.floating-facts {
  position: absolute;
  top: 54px;
  left: -25px;
  z-index: 2;
  display: flex;
  flex-direction: column;
  padding: 14px 24px;
  border-radius: 16px;
  color: white;
  background: var(--sage);
  box-shadow: 0 9px 20px #263d2930;
  transform: rotate(-6deg);
  transition: transform .25s;
}
.floating-facts strong { font-size: 2.8rem; line-height: 1.05; letter-spacing: -.055em; }
.floating-facts span { font-size: .7rem; margin-top: 3px; }
.hero-illustration:hover .floating-facts { transform: rotate(-2deg) translateY(-5px); }
.floating-date { position: absolute; right: -9px; bottom: 54px; background: #f1c9a3; border: 1px solid #dba67a; border-radius: 12px; padding: 11px 16px; font-size: .76rem; transform: rotate(4deg); box-shadow: 0 7px 18px #684b2120; }
.floating-date strong { display: block; font-size: 1.6rem; line-height: 1.2; }
.illustration-note { background: #f8f5eecf; padding: 2px 7px; left: 20px; right: 20px; border-radius: 5px; }
.search-section { background: #dfebd2; border-color: #bfd1aa; }
.search-card { border-color: #adc596; border-top: 4px solid var(--sage); box-shadow: 0 5px 0 #c6d7b3; transition: transform .2s, box-shadow .2s; }
.search-card:hover { transform: translateY(-6px); box-shadow: 0 11px 0 #c6d7b3; }
.card-number { color: var(--sage); font-weight: 700; }
.documents-card { border: 2px solid #bdcfa8; box-shadow: 9px 9px 0 #e0e9d2; }
.garden-card { background: var(--sage); color: white; }
.garden-card svg { color: var(--lime); }
.faq-section { background: #f0e6d5; border-color: #deccb1; }
.faq-list details { border-color: #cdbca1; transition: background .15s; }
.faq-list details:first-child { border-top-color: #cdbca1; }
.faq-list details[open] { background: #fbf6ed; border-radius: 10px; }
.faq-list details[open] summary, .faq-list details[open] p { padding-left: 14px; }
.faq-toggle { border: 1px solid #adc298; border-radius: 50%; width: 30px; height: 30px; display: inline-flex; align-items: center; justify-content: center; background: #e1ebd3; }
.form-card { border: 2px solid #a2bb8d; box-shadow: 9px 9px 0 #deebd0; }
.kind-option { transition: border-color .2s, background .2s, transform .2s; }
.kind-option:hover { transform: translateY(-2px); border-color: var(--sage); }
.kind-option:has(input:checked) { color: white; background: var(--sage); border-color: var(--sage); }
.kind-option input { accent-color: #d4ecb4; }
input:not([type=radio]):not([type=checkbox]):not([type=hidden]), select, textarea { transition: border-color .18s, box-shadow .18s, background .18s; }
input:focus, textarea:focus, select:focus { box-shadow: 0 0 0 3px #d4e4be; }
input.has-value, textarea.has-value, select.has-value { background: #f5faef; }
input[aria-invalid=true], textarea[aria-invalid=true], select[aria-invalid=true] { background: #fff6f1; }
.extra-fields.is-switching { animation: field-switch .22s ease-out; }
.message-counter { font-size: .69rem; text-align: right; color: var(--muted); margin-top: 5px; margin-bottom: 0; }
.submit-btn { min-height: 54px; box-shadow: 0 5px 0 #203e2a; }
.submit-btn:active { transform: translateY(3px); box-shadow: 0 2px 0 #203e2a; }
.submit-btn:disabled { box-shadow: none; }
.share-panel { background: var(--sage); color: white; box-shadow: 12px 12px 0 #c9dfad; }
.share-panel .eyebrow { color: var(--lime); }
.share-panel .btn-primary { color: #203c2c; background: var(--lime); }
.share-panel .btn-primary:hover { background: #e3f4ca; }
.share-panel .btn-text { color: white; }
.share-panel .btn-quiet { color: white; border-color: #accd92; background: #ffffff0a; }
.share-panel .btn-quiet:hover { background: #ffffff18; }
.share-panel .share-status { color: var(--lime); }
.share-art { opacity: .9; }
.share-art path { stroke: #d4ecb4; }
.share-art circle { stroke: #92b477; }
.image-share-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 20px; }
.image-share-actions .btn { font-size: .76rem; min-height: 44px; }
.interaction-toast {
  position: fixed;
  z-index: 70;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  padding: 13px 22px;
  max-width: calc(100vw - 36px);
  border-radius: 12px;
  color: white;
  background: #203c2c;
  box-shadow: 0 8px 35px #0004;
  font-size: .88rem;
  animation: toast-in .2s ease-out;
}
.site-footer { gap: 12px 23px; }
.secondary-page { padding-top: 0; }
@keyframes field-switch { from { transform: translateY(6px); } to { transform: translateY(0); } }
@keyframes toast-in { from { transform: translate(-50%,8px); } to { transform: translate(-50%,0); } }
@media(max-width:991px) {
  :root { --header-offset: 139px; }
  body { padding-top: 122px; }
  .header-inner { flex-wrap: wrap; padding-block: 13px 0; gap: 4px 20px; min-height: 122px; }
  .main-nav { display: flex; width: 100%; order: 3; justify-content: space-between; gap: 12px; }
  .main-nav a { min-height: 44px; display: flex; align-items: center; }
  .hero-illustration { margin-inline: auto; }
  .floating-facts { top: 29px; left: -17px; padding: 12px 18px; }
  .floating-facts strong { font-size: 2.3rem; }
  .floating-date { bottom: 38px; }
  .hero { padding-block: 42px 55px; }
}
@media(max-width:575px) {
  :root { --header-offset: 138px; }
  body { padding-top: 121px; }
  .header-inner { min-height: 121px; padding-top: 12px; padding-bottom: 0; }
  .main-nav { gap: 8px; font-size: .69rem; }
  .main-nav a { white-space: nowrap; }
  .hero { padding-top: 29px; padding-bottom: 43px; }
  .hero-facts { padding: 10px 11px; font-size: .79rem; }
  .hero-illustration { max-width: 260px; box-shadow: 9px 9px 0 #d5e7bd; margin-top: 22px; }
  .hero-illustration img { border-radius: 140px 140px 16px 16px; }
  .floating-facts { top: 20px; left: -9px; padding: 9px 13px; border-radius: 10px; }
  .floating-facts strong { font-size: 1.9rem; }
  .floating-facts span { font-size: .62rem; }
  .floating-date { right: -7px; bottom: 33px; padding: 8px 11px; font-size: .65rem; }
  .floating-date strong { font-size: 1.2rem; }
  .illustration-note { bottom: 8px; left: 12px; right: 12px; }
  .share-panel { box-shadow: 7px 7px 0 #c9dfad; }
  .share-actions .btn-primary { font-size: .81rem; }
  .image-share-actions { display: flex; flex-direction: column; align-items: stretch; gap: 10px; }
  .image-share-actions .btn { font-size: .72rem; padding: 11px 9px; gap: 6px; }
  .interaction-toast { bottom: calc(80px + env(safe-area-inset-bottom)); white-space: normal; text-align: center; }
  .mobile-actions { box-shadow: 0 -5px 20px #315d3e15; }
  .mobile-actions a { transition: background .18s; }
  .mobile-actions a:active { background: #c7deae; }
  .mobile-actions a:first-child:active { background: #254930; }
  .site-footer { padding-bottom: 97px; }
}
@media(prefers-reduced-motion:reduce) {
  .search-card:hover, .hero-actions .btn-primary:hover, .hero-actions .btn-primary:active, .kind-option:hover, .submit-btn:active { transform: none; }
  .hero-illustration:hover .floating-facts { transform: rotate(-6deg); }
}
