.elementor-kit-943{--e-global-color-primary:#B8943A;--e-global-color-secondary:#0E0D0B;--e-global-color-text:#2C2A27;--e-global-color-accent:#8B3E22;--e-global-color-76605c3:#2B5B6C;--e-global-color-31b7683:#0E0D0B;--e-global-color-9542a3c:#1A1917;--e-global-color-f3eb232:#2C2A27;--e-global-color-05c7a6b:#6B6760;--e-global-color-a026d2e:#9E9B97;--e-global-color-ecce74e:#F5F0E8;--e-global-color-77b615e:#FAF7F2;--e-global-color-b014dfd:#EDE7DA;--e-global-color-a9e78ed:#B8943A;--e-global-color-c7375f5:#F0E4C4;--e-global-color-6ed15e5:#8A6C22;--e-global-color-5a47f15:#2A4A6B;--e-global-color-7582111:#E8EFF7;--e-global-color-5b4cdd7:#3D6491;--e-global-color-565c30e:#8B3E22;--e-global-color-f148d3e:#F5E8E2;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-weight:300;--e-global-typography-secondary-font-family:"Jost";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Jost";--e-global-typography-text-font-weight:300;--e-global-typography-accent-font-family:"Cormorant Garamond";--e-global-typography-accent-font-weight:400;--e-global-typography-accent-font-style:italic;--e-global-typography-10ef6e0-font-family:"Cormorant Garamond";--e-global-typography-10ef6e0-font-weight:300;--e-global-typography-10ef6e0-line-height:1.05em;--e-global-typography-76004e1-font-family:"Cormorant Garamond";--e-global-typography-76004e1-font-weight:300;--e-global-typography-76004e1-line-height:1.1em;--e-global-typography-55c12f2-font-family:"Cormorant Garamond";--e-global-typography-55c12f2-font-size:36px;--e-global-typography-55c12f2-font-weight:300;--e-global-typography-55c12f2-line-height:1.15em;--e-global-typography-a853843-font-family:"Cormorant Garamond";--e-global-typography-a853843-font-size:24px;--e-global-typography-a853843-font-weight:400;--e-global-typography-a853843-line-height:1.25em;--e-global-typography-dcf342f-font-family:"Jost";--e-global-typography-dcf342f-font-size:19px;--e-global-typography-dcf342f-font-weight:300;--e-global-typography-dcf342f-line-height:1.8em;--e-global-typography-df10124-font-family:"Jost";--e-global-typography-df10124-font-size:13px;--e-global-typography-df10124-font-weight:300;--e-global-typography-df10124-line-height:1.7em;--e-global-typography-dd514b4-font-family:"Jost";--e-global-typography-dd514b4-font-size:13px;--e-global-typography-dd514b4-font-weight:300;--e-global-typography-dd514b4-line-height:1.7em;--e-global-typography-38a2aa0-font-size:11px;--e-global-typography-38a2aa0-font-weight:500;--e-global-typography-38a2aa0-text-transform:uppercase;--e-global-typography-38a2aa0-letter-spacing:0.13em;--e-global-typography-7bc3bd0-font-family:"Jost";--e-global-typography-7bc3bd0-font-size:13px;--e-global-typography-7bc3bd0-font-weight:400;--e-global-typography-7bc3bd0-text-transform:uppercase;--e-global-typography-7bc3bd0-letter-spacing:0.05em;--e-global-typography-8c011d1-font-family:"Jost";--e-global-typography-8c011d1-font-size:12px;--e-global-typography-8c011d1-font-weight:500;--e-global-typography-8c011d1-text-transform:uppercase;--e-global-typography-8c011d1-letter-spacing:0.08em;}.elementor-kit-943 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1500px;}.e-con{--container-max-width:1500px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-943{--e-global-typography-10ef6e0-font-size:8vw;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ============================================================
   AMONDINI — Globales Stylesheet
   Einfügen unter: Elementor → Hamburger ☰ → Website-Einstellungen
                   → Individuelles CSS
   Einmal einfügen. Gilt danach für alle Seiten.
   ============================================================ */

/* ---------- 1. Design-Tokens ---------- */
:root {
  /* Farben */
  --amo-teal:        #2C5C6B;
  --amo-teal-deep:   #1E4555;
  --amo-teal-mid:    #234F61;
  --amo-gold:        #B8943A;
  --amo-gold-light:  #F0E4C4;
  --amo-gold-dark:   #8A6C22;
  --amo-terra:       #8B3E22;
  --amo-terra-light: #F5E8E2;
  --amo-cream:       #F5F0E8;
  --amo-white-warm:  #FAF7F2;
  --amo-parchment:   #EDE7DA;
  --amo-gray:        #6B6760;
  --amo-gray-light:  #9E9B97;
  --amo-border:      rgba(14,13,11,0.10);
  --amo-border-soft: rgba(14,13,11,0.06);

  /* Schrift */
  --amo-serif: 'Cormorant Garamond', Georgia, serif;
  --amo-sans:  'Jost', -apple-system, BlinkMacSystemFont, sans-serif;

  /* Fluide Typo-Skala — skaliert stufenlos von 375px bis 1440px.
     Keine Breakpoints nötig, bricht auf keinem Gerät. */
  --amo-fs-display: clamp(32px, 21.4px + 2.82vw, 62px);
  --amo-fs-title:   clamp(27px, 21.0px + 1.60vw, 44px);
  --amo-fs-sub:     clamp(19px, 17.9px + 0.28vw, 22px);
  --amo-fs-lead:    clamp(16px, 15.3px + 0.19vw, 18px);
  --amo-fs-body:    clamp(15px, 14.6px + 0.10vw, 16px);
  --amo-fs-small:   clamp(13px, 12.6px + 0.10vw, 14px);
  --amo-fs-label:   clamp(12px, 11.6px + 0.10vw, 13px);

  /* Abstände — ebenfalls fluid */
  --amo-space-section: clamp(48px, 5vw, 80px);
  --amo-space-edge:    clamp(20px, 4vw, 56px);
  --amo-space-gap:     clamp(24px, 3vw, 56px);

  --amo-radius: 4px;
}

/* ---------- 2. Typografie-Klassen ---------- */
.amo-display {
  font-family: var(--amo-serif);
  font-size: var(--amo-fs-display);
  font-weight: 300;
  line-height: 1.08;
  letter-spacing: 0.01em;
  overflow-wrap: break-word;
  hyphens: auto;
}
.amo-title {
  font-family: var(--amo-serif);
  font-size: var(--amo-fs-title);
  font-weight: 300;
  line-height: 1.15;
  overflow-wrap: break-word;
  hyphens: auto;
}
.amo-display em,
.amo-title em { font-style: italic; color: var(--amo-gold-dark); }

.amo-on-dark .amo-display,
.amo-on-dark .amo-title,
.amo-display.amo-light,
.amo-title.amo-light { color: var(--amo-cream); }
.amo-display.amo-light em,
.amo-title.amo-light em { color: var(--amo-gold); }

.amo-lead {
  font-size: var(--amo-fs-lead);
  font-weight: 300;
  line-height: 1.8;
  color: var(--amo-gray);
  max-width: 62ch;
}
.amo-lead.amo-light { color: rgba(245,240,232,0.55); }

.amo-body { font-size: var(--amo-fs-body); font-weight: 300; line-height: 1.7; }

/* Eyebrow — kleines Label mit Strich davor */
.amo-eyebrow {
  font-family: var(--amo-sans);
  font-size: var(--amo-fs-label);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--amo-gold-dark);
  display: flex;
  align-items: center;
  gap: 10px;
}
.amo-eyebrow::before {
  content: '';
  width: 22px; height: 1px;
  background: currentColor;
  flex-shrink: 0;
}
.amo-eyebrow.amo-light { color: rgba(245,240,232,0.55); }
.amo-eyebrow.amo-terra { color: var(--amo-terra); }

/* ---------- 3. Buttons ---------- */
.amo-btn .elementor-button,
a.amo-btn {
  font-family: var(--amo-sans);
  font-size: var(--amo-fs-small);
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 13px 28px;
  border-radius: var(--amo-radius);
  border: none;
  display: inline-block;
  text-decoration: none;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
}
.amo-btn--terra .elementor-button { background: var(--amo-terra); color: #fff; }
.amo-btn--terra .elementor-button:hover { background: #6E3019; }
.amo-btn--gold  .elementor-button { background: var(--amo-gold); color: #fff; }
.amo-btn--gold  .elementor-button:hover { background: var(--amo-gold-dark); }
.amo-btn--teal  .elementor-button { background: var(--amo-teal); color: var(--amo-cream); }
.amo-btn--teal  .elementor-button:hover { background: var(--amo-teal-deep); }

/* Sichtbarer Tastatur-Fokus (Barrierefreiheit) */
.amo-btn .elementor-button:focus-visible,
.amo-card:focus-visible,
.amo-faq summary:focus-visible {
  outline: 2px solid var(--amo-gold);
  outline-offset: 3px;
}

/* ---------- 4. Piktogramm-Raster (GHS) ---------- */
.amo-pictos {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.amo-picto {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: var(--amo-radius);
  padding: clamp(12px, 1.4vw, 18px) 10px;
  text-align: center;
}
.amo-picto__sym { font-size: clamp(26px, 2.4vw, 32px); line-height: 1; margin-bottom: 8px; }
.amo-picto__code {
  font-size: var(--amo-fs-label);
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: rgba(245,240,232,0.45);
  line-height: 1.4;
}
@media (max-width: 520px) { .amo-pictos { grid-template-columns: repeat(2, 1fr); } }

/* ---------- 5. Hinweisleiste ---------- */
.amo-notice {
  background: var(--amo-terra-light);
  border-top: 3px solid var(--amo-terra);
  border-bottom: 1px solid rgba(139,62,34,0.15);
  padding: 18px var(--amo-space-edge);
  display: flex;
  align-items: flex-start;
  gap: 14px;
}
.amo-notice__icon { font-size: 20px; line-height: 1.4; flex-shrink: 0; }
.amo-notice__text {
  font-size: var(--amo-fs-body);
  color: var(--amo-terra);
  font-weight: 300;
  line-height: 1.6;
  margin: 0;
}

/* ---------- 6. Leistungs-Karten ---------- */
.amo-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: clamp(14px, 1.6vw, 20px);
}
.amo-card {
  background: var(--amo-white-warm);
  border: 1px solid var(--amo-border-soft);
  border-top: 3px solid var(--amo-terra);
  border-radius: var(--amo-radius);
  padding: clamp(20px, 2vw, 28px);
}
.amo-card__step {
  font-family: var(--amo-sans);
  font-size: var(--amo-fs-label);
  letter-spacing: 0.12em;
  color: var(--amo-terra);
  margin-bottom: 8px;
}
.amo-card__title {
  font-family: var(--amo-serif);
  font-size: var(--amo-fs-sub);
  font-weight: 400;
  color: var(--amo-teal);
  line-height: 1.25;
  margin-bottom: 8px;
}
.amo-card__text {
  font-size: var(--amo-fs-body);
  font-weight: 300;
  line-height: 1.7;
  color: var(--amo-gray);
  margin: 0;
}

/* ---------- 7. FAQ (ohne JavaScript) ---------- */
.amo-faq { border-top: 1px solid var(--amo-border); }
.amo-faq details {
  border-bottom: 1px solid var(--amo-border);
}
.amo-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 18px 0;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  font-size: var(--amo-fs-lead);
  font-weight: 400;
  color: var(--amo-teal);
  line-height: 1.5;
}
.amo-faq summary::-webkit-details-marker { display: none; }
.amo-faq summary::after {
  content: '+';
  font-size: 24px;
  line-height: 1;
  color: var(--amo-terra);
  flex-shrink: 0;
  transition: transform 0.2s;
}
.amo-faq details[open] summary::after { transform: rotate(45deg); }
.amo-faq__a {
  font-size: var(--amo-fs-body);
  font-weight: 300;
  line-height: 1.8;
  color: var(--amo-gray);
  padding: 0 44px 20px 0;
  margin: 0;
  max-width: 76ch;
}
@media (prefers-reduced-motion: reduce) {
  .amo-faq summary::after { transition: none; }
}

/* ---------- 8. Kontakt-Box ---------- */
.amo-contact {
  background: var(--amo-white-warm);
  border: 1px solid var(--amo-border-soft);
  border-left: 3px solid var(--amo-gold);
  border-radius: var(--amo-radius);
  padding: clamp(20px, 2vw, 26px);
}
.amo-contact__name {
  font-family: var(--amo-serif);
  font-size: var(--amo-fs-sub);
  font-weight: 400;
  color: var(--amo-teal);
  margin-bottom: 2px;
}
.amo-contact__role {
  font-size: var(--amo-fs-small);
  color: var(--amo-gray-light);
  letter-spacing: 0.05em;
  margin-bottom: 14px;
}
.amo-contact a {
  display: block;
  font-size: var(--amo-fs-body);
  color: var(--amo-teal-mid);
  text-decoration: none;
  padding: 5px 0;
  font-weight: 300;
}
.amo-contact a:hover { color: var(--amo-gold-dark); }

/* ---------- 9. Formular-Styling (greift auf Elementor-Formulare) ---------- */
.amo-form-box {
  background: var(--amo-white-warm);
  border: 1px solid var(--amo-border-soft);
  border-radius: var(--amo-radius);
  padding: clamp(22px, 2.4vw, 34px);
}
.amo-form-box .elementor-field-group > label {
  font-size: var(--amo-fs-label) !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--amo-gray) !important;
  margin-bottom: 6px;
}
.amo-form-box .elementor-field-textual {
  font-size: var(--amo-fs-body) !important;
  padding: 11px 13px !important;
  border: 1px solid var(--amo-border) !important;
  border-radius: var(--amo-radius) !important;
  background: var(--amo-cream) !important;
}
.amo-form-box .elementor-field-textual:focus {
  border-color: var(--amo-gold) !important;
  outline: none;
  box-shadow: 0 0 0 3px rgba(184,148,58,0.15);
}
/* Zustimmungs-Häkchen: Box links, Text rechts */
.amo-form-box .elementor-field-type-acceptance .elementor-field-subgroup label,
.amo-form-box .elementor-field-type-checkbox .elementor-field-subgroup label {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  font-size: var(--amo-fs-small);
  font-weight: 300;
  line-height: 1.5;
  color: var(--amo-gray);
}
.amo-form-box .elementor-field-subgroup input[type="checkbox"] {
  margin-top: 3px;
  flex-shrink: 0;
}

/* ---------- 10. Anker-Sprung unter klebendem Header ---------- */
html { scroll-behavior: smooth; }
[id] { scroll-margin-top: 90px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }/* End custom CSS */