/* ==========================================================================
   flatsome-overrides.css – Wärme mit System
   Neutralises Flatsome defaults that fight the design system. Kept separate
   from components.css so it is obvious what is "undoing the theme" and what
   is "our design".
   ========================================================================== */

/* --------------------------------------------------------------------------
   Buttons: strip the theme's shadow, uppercase and letter-spacing before
   components.css rebuilds them (PROJECT_PLAN §5.5, last line).
   -------------------------------------------------------------------------- */

.button,
button,
input[type="submit"],
input[type="button"] {
  box-shadow: none !important;
  text-shadow: none;
  letter-spacing: 0;
  text-transform: none;
}

.button:hover,
button:hover {
  box-shadow: none !important;
}

/* Flatsome adds a bottom margin to every button, which breaks button rows. */
.button { margin-bottom: 0; }

/* --------------------------------------------------------------------------
   No off-palette blue. Flatsome's default accent is #446084; anything that
   still references it is pulled back to the brand indigo (QA §11).
   -------------------------------------------------------------------------- */

.nav-dropdown,
.nav > li > a:hover,
.nav-box > li.active > a,
.nav-pills > li.active > a {
  color: inherit;
}

/* --------------------------------------------------------------------------
   Headings: Flatsome uppercases section titles and widget titles by default.
   The Customizer settings are already "Normal"; this covers the rest.
   -------------------------------------------------------------------------- */

.section-title,
.section-title-container,
.widget-title,
.uppercase,
.is-uppercase {
  text-transform: none;
  letter-spacing: 0;
}

/* The section title's coloured bar is template chrome we do not use. */
.section-title b { display: none; }

/* Flatsome uppercases form legends, labels and definition terms. Sentence
   case everywhere (PROJECT_PLAN §5.3), and these are real content, not
   labels. */
legend,
label,
dt,
dd,
.ws-panel legend,
.ws-panel label {
  text-transform: none;
  letter-spacing: 0;
}

/* Flatsome italicises blockquotes. Italic is reserved for the brand phrase
   *mit System* (PROJECT_PLAN §5.1.5), so quotes stay upright. */
blockquote,
blockquote p,
.ws-note__quote,
.ws-case__quote blockquote {
  font-style: normal;
}

.section-title-normal {
  border-bottom: 1px solid var(--ws-line);
}

/* --------------------------------------------------------------------------
   Dividers and rules pick up the brand line colour.
   -------------------------------------------------------------------------- */

hr,
.is-divider {
  background-color: var(--ws-line);
  height: 1px;
  max-width: none;
  margin: var(--ws-space-6) 0;
}

/* --------------------------------------------------------------------------
   Tables: rules instead of zebra stripes, horizontal scroll on mobile
   (PROJECT_PLAN §5.4, QA §11 "tables scroll inside their own container").
   -------------------------------------------------------------------------- */

.ws-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

table {
  border-radius: 0;
  border-collapse: collapse;
  width: 100%;
}

table th,
table td {
  padding: var(--ws-space-3) var(--ws-space-4);
  border: 0;
  border-bottom: 1px solid var(--ws-line);
  text-align: left;
  vertical-align: top;
  background: none;
}

table th {
  font-family: var(--ws-font-display);
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--ws-ink);
  /* Flatsome uppercases table headers; sentence case everywhere (§5.3). */
  text-transform: none;
  letter-spacing: 0;
  border-bottom-color: var(--ws-ink);
}

table tr:nth-child(even) td { background: none; }

table caption {
  caption-side: top;
  padding-bottom: var(--ws-space-3);
  font-family: var(--ws-font-display);
  font-weight: 600;
  color: var(--ws-ink);
  text-align: left;
}

/* --------------------------------------------------------------------------
   Accordion / FAQ: no boxes, just rules.
   -------------------------------------------------------------------------- */

.accordion-item {
  border-bottom: 1px solid var(--ws-line);
}

.accordion-title {
  padding: var(--ws-space-4) 0;
  border: 0;
  font-family: var(--ws-font-display);
  font-size: 1.0625rem;
  font-weight: 600;
  color: var(--ws-ink);
}

.accordion-title.active { color: var(--ws-ink); }

.accordion-inner { padding: 0 0 var(--ws-space-5); }

/* --------------------------------------------------------------------------
   Flatsome's built-in "Animate" attribute conflicts with GSAP and is not used
   (PROJECT_PLAN §6.3). Neutralised here so a leftover attribute on an
   imported element cannot hide content.
   -------------------------------------------------------------------------- */

[data-animate],
.has-animation:not(.animated) {
  opacity: 1 !important;
  transform: none !important;
}
