/* TILLARTS foundations. Widget-specific Elementor styles retain precedence. */
:where(body.tillarts-theme) a { color: var(--ta-navy); text-underline-offset: .2em; }
.tillarts-theme ::selection { color: var(--ta-navy); background: var(--ta-lime); }
.tillarts-theme :where(h5, h6) { font-family: var(--ta-heading-font); color: var(--ta-navy); letter-spacing: -.025em; }
.tillarts-theme :where(input:not([type=checkbox]):not([type=radio]):not([type=submit]), textarea, select) { font-family: var(--ta-body-font); color: var(--ta-navy); border: 1px solid #b1b9b8; border-radius: 3px; background: #fffefa; padding: .75em .9em; }
.tillarts-theme :where(button, input[type=submit], input[type=button], .wp-block-button__link) { font-family: var(--ta-body-font); }
.tillarts-theme :where(.entry-content blockquote, .page-content blockquote) { border-inline-start: 4px solid var(--ta-lime); margin-inline: 0; padding-inline-start: 1.3em; }
.tillarts-theme :where(.entry-content a, .page-content a):hover { text-decoration-thickness: 2px; }

/* Override inherited kit tokens without writing to the Elementor database.
   Use Customizer > Farben & Layout to opt out when a different kit is desired.
   Navy remains the accent for legible links/buttons on the light background. */
body.ta-elementor-defaults :where(.elementor) {
  --e-global-color-primary: var(--ta-navy);
  --e-global-color-secondary: var(--ta-graphite);
  --e-global-color-text: var(--ta-graphite);
  --e-global-color-accent: var(--ta-navy);
  --e-global-typography-primary-font-family: 'Space Grotesk';
  --e-global-typography-primary-font-weight: 700;
  --e-global-typography-secondary-font-family: 'Space Grotesk';
  --e-global-typography-secondary-font-weight: 600;
  --e-global-typography-text-font-family: 'Inter';
  --e-global-typography-text-font-weight: 400;
  --e-global-typography-accent-font-family: 'Inter';
  --e-global-typography-accent-font-weight: 600;
}

/* Optional classes for Elementor > Erweitert > CSS-Klassen.
   Also usable outside the bundled .ta-home starter layout. */
.tillarts-theme :where(.ta-panel-navy) { background: var(--ta-navy); color: var(--ta-sand); }
.tillarts-theme :where(.ta-panel-lime) { background: var(--ta-lime); color: var(--ta-navy); }
.tillarts-theme :where(.ta-panel-sand) { background: var(--ta-sand); color: var(--ta-graphite); }
.tillarts-theme .ta-panel-navy :where(h1,h2,h3,h4,h5,h6,.elementor-heading-title) { color: var(--ta-sand); }
.tillarts-theme :where(.ta-card) { border: 1px solid rgb(20 45 59 / 20%); background: #fffefa; border-radius: 3px; }
.tillarts-theme :where(.ta-button) .elementor-button { font-family: var(--ta-body-font); font-weight: 600; border: 1px solid var(--ta-navy); border-radius: 3px; padding: 15px 23px; color: var(--ta-sand); background: var(--ta-navy); text-decoration: none; }
.tillarts-theme :where(.ta-button) .elementor-button:hover { color: var(--ta-navy); background: var(--ta-lime); }
.tillarts-theme :where(.ta-button-lime) .elementor-button { color: var(--ta-navy); background: var(--ta-lime); }
.tillarts-theme :where(.ta-button-lime) .elementor-button:hover { color: var(--ta-sand); background: var(--ta-navy); }
.tillarts-theme :where(.ta-eyebrow) { font: 600 11px/1.5 var(--ta-body-font); text-transform: uppercase; letter-spacing: .12em; }
.tillarts-theme :where([id]) { scroll-margin-top: 110px; }
@media (prefers-reduced-motion: reduce) { .tillarts-theme { scroll-behavior: auto; } }
