/* Preislisten-Seiten + EZ Form Calculator */

.hero-inner--compact {
  padding: clamp(48px, 6vw, 72px) 0;
}

.epi-preisliste-tabs {
  background: var(--epi-white);
  border-bottom: 1px solid var(--epi-border);
  position: sticky;
  top: var(--epi-header-h);
  z-index: 100;
}

.site-header.is-scrolled ~ main .epi-preisliste-tabs,
body.admin-bar .epi-preisliste-tabs {
  top: var(--epi-header-h);
}

.epi-preisliste-tabs__inner {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 14px 0;
}

.epi-preisliste-tabs__link {
  display: inline-flex;
  align-items: center;
  padding: 10px 20px;
  border-radius: 100px;
  font-family: var(--epi-font-b);
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--epi-text);
  border: 1px solid var(--epi-border);
  background: var(--epi-off-white);
  transition: background var(--transition), color var(--transition), border-color var(--transition);
}

.epi-preisliste-tabs__link:hover {
  border-color: var(--epi-petrol);
  color: var(--epi-petrol);
}

.epi-preisliste-tabs__link.is-active {
  background: var(--epi-petrol);
  border-color: var(--epi-petrol);
  color: var(--epi-white);
}

.epi-preisliste-body {
  padding: clamp(40px, 6vw, 64px) 0 clamp(64px, 8vw, 96px);
}

.epi-preisliste-content {
  max-width: 100%;
}

.epi-preisliste-editor-hint {
  margin-top: 24px;
  padding: 16px 20px;
  background: #fff8e6;
  border-left: 4px solid var(--epi-gold);
  border-radius: var(--epi-radius);
  font-size: 0.9rem;
  color: var(--epi-charcoal);
}

.epi-preisliste-editor-hint code {
  background: rgba(0, 0, 0, 0.06);
  padding: 2px 6px;
  border-radius: 3px;
  font-size: 0.85em;
}

/* EZ Form Calculator – Theme-Farben */
.epi-preisliste-content .ezfc-wrapper,
.epi-preisliste-content .ezfc-form,
.epi-page-body--content .ezfc-wrapper,
.epi-page-body--content .ezfc-form {
  max-width: 100%;
  font-family: var(--epi-font-b);
  color: var(--epi-charcoal);
}

.epi-preisliste-content .ezfc-element,
.epi-preisliste-content .ezfc-element-input {
  border-color: var(--epi-border);
  border-radius: var(--epi-radius);
}

.epi-preisliste-content .ezfc-element-input:focus,
.epi-preisliste-content select.ezfc-element-input:focus,
.epi-preisliste-content textarea.ezfc-element-input:focus {
  border-color: var(--epi-petrol);
  outline: none;
  box-shadow: 0 0 0 3px rgba(0, 122, 114, 0.15);
}

.epi-preisliste-content .ezfc-label,
.epi-preisliste-content label {
  font-weight: 500;
  color: var(--epi-forest);
}

.epi-preisliste-content .ezfc-price,
.epi-preisliste-content .ezfc-total,
.epi-preisliste-content .ezfc-summary-price {
  color: var(--epi-petrol);
  font-weight: 600;
}

.epi-preisliste-content button,
.epi-preisliste-content input[type="submit"],
.epi-preisliste-content .ezfc-submit,
.epi-preisliste-content .ezfc-button {
  background: var(--epi-petrol) !important;
  border-color: var(--epi-petrol) !important;
  color: var(--epi-white) !important;
  border-radius: var(--epi-radius) !important;
  font-family: var(--epi-font-b) !important;
  font-weight: 600 !important;
  transition: background var(--transition), border-color var(--transition) !important;
}

.epi-preisliste-content button:hover,
.epi-preisliste-content input[type="submit"]:hover,
.epi-preisliste-content .ezfc-submit:hover,
.epi-preisliste-content .ezfc-button:hover {
  background: var(--epi-petrol-dark) !important;
  border-color: var(--epi-petrol-dark) !important;
}

.epi-preisliste-content table,
.epi-preisliste-content .ezfc-table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.5rem 0;
}

.epi-preisliste-content table th,
.epi-preisliste-content table td,
.epi-preisliste-content .ezfc-table th,
.epi-preisliste-content .ezfc-table td {
  padding: 12px 16px;
  border-bottom: 1px solid var(--epi-border);
  text-align: left;
}

.epi-preisliste-content table th,
.epi-preisliste-content .ezfc-table th {
  background: var(--epi-mist);
  color: var(--epi-forest);
  font-family: var(--epi-font-h);
  font-weight: 600;
}

.epi-preisliste-content table tr:hover td,
.epi-preisliste-content .ezfc-table tr:hover td {
  background: rgba(0, 122, 114, 0.04);
}

.epi-preisliste-content h2,
.epi-preisliste-content h3 {
  color: var(--epi-forest);
  font-family: var(--epi-font-h);
  margin-top: 2rem;
}

.epi-preisliste-content h2:first-child,
.epi-preisliste-content h3:first-child {
  margin-top: 0;
}

@media (max-width: 640px) {
  .epi-preisliste-tabs__inner {
    justify-content: center;
  }

  .epi-preisliste-tabs__link {
    flex: 1 1 auto;
    justify-content: center;
    text-align: center;
  }
}
