.elpt {
  --elpt-accent: var(--elpc-accent, #c9a962);
  --elpt-accent-bright: var(--elpc-accent-bright, #e8d4a0);
  --elpt-accent-soft: rgba(201, 169, 98, 0.18);
  --elpt-green: var(--elpc-surface, #1a2218);
  --elpt-text: var(--elpc-text, #f4f0e8);
  --elpt-muted: rgba(244, 240, 232, 0.72);
  --elpt-gold-border: rgba(201, 169, 98, 0.55);
  --elpt-radius: 20px;
  --elpt-font-display: var(--elpc-font-display, 'Cormorant SC', 'Cormorant', serif);
  --elpt-font-body: var(--elpc-font-body, 'Inter', system-ui, sans-serif);
  --elpt-gap: clamp(14px, 2vw, 20px);
  --elpt-max-width: var(--elpc-max-width, 1300px);
  --elpt-panel-bg: url('http://v-8-meste.ru/wp-content/uploads/2026/07/magnific_a-boy-and-a-girl-dressed-_l7kLso2gv9.jpeg');

  font-family: var(--elpt-font-body);
  color: var(--elpt-text);
  padding: clamp(40px, 6vw, 72px) clamp(16px, 3vw, 24px);
  -webkit-font-smoothing: antialiased;
}
.elpt * { box-sizing: border-box; margin: 0; padding: 0; }

.elpt-wrap {
  max-width: var(--elpt-max-width, 1300px);
  margin: 0 auto;
}

.elpt-head {
  text-align: center;
  max-width: 760px;
  margin: 0 auto clamp(28px, 4vw, 40px);
}
.elpt-kicker {
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--elpt-accent-bright);
  margin-bottom: 12px;
}
.elpt-head h2,
.elementor-widget-elbe_el_terms .elpt-head h2 {
  font-family: var(--elpt-font-display) !important;
  font-size: clamp(26px, 4vw, 40px) !important;
  font-weight: 600 !important;
  line-height: 1.12 !important;
  color: var(--elpt-text) !important;
  margin-bottom: 12px !important;
}
.elpt-head p {
  font-size: clamp(14px, 1.4vw, 16px);
  line-height: 1.65;
  color: var(--elpt-muted);
}

.elpt-panel {
  position: relative;
  margin-top: clamp(24px, 4vw, 36px);
  padding: clamp(28px, 4vw, 48px) clamp(18px, 3vw, 32px) clamp(32px, 5vw, 56px);
  border-radius: var(--elpt-radius);
  background: var(--elpt-green);
  border: none;
  overflow: hidden;
}
.elpt-panel::before {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--elpt-panel-bg) center/cover no-repeat;
  opacity: 0.2;
  pointer-events: none;
  z-index: 0;
}
.elpt-panel > * {
  position: relative;
  z-index: 1;
}

.elpt-grid {
  display: grid;
  gap: var(--elpt-gap);
  align-items: stretch;
}
.elpt-grid + .elpt-grid {
  margin-top: var(--elpt-gap);
}
.elpt-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.elpt-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (max-width: 860px) {
  .elpt-grid--3 { grid-template-columns: 1fr; }
  .elpt-grid--2 { grid-template-columns: 1fr; }
}

.elpt-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: clamp(18px, 2.5vw, 24px);
  border-radius: 16px;
  background: transparent;
  border: 1px solid var(--elpt-gold-border);
}

.elpt-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin-bottom: 12px;
  border-radius: 10px;
  background: transparent;
  border: 1px solid var(--elpt-gold-border);
  font-size: 18px;
  line-height: 1;
}
.elpt-card h3,
.elementor-widget-elbe_el_terms .elpt-card h3 {
  font-family: var(--elpt-font-display) !important;
  font-size: clamp(20px, 2.2vw, 24px) !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
  color: var(--elpt-accent-bright) !important;
  margin-bottom: 10px !important;
}
.elpt-card p,
.elpt-card li {
  font-size: 14px;
  line-height: 1.62;
  color: var(--elpt-muted);
}
.elpt-card ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}
.elpt-card li {
  position: relative;
  padding-left: 16px;
}
.elpt-card li::before {
  content: '—';
  position: absolute;
  left: 0;
  color: var(--elpt-accent);
}

.elpt-note {
  margin-top: clamp(20px, 3vw, 28px);
  padding: 16px 18px;
  border-radius: 14px;
  background: transparent;
  border: 1px solid var(--elpt-gold-border);
  font-size: 13px;
  line-height: 1.6;
  color: var(--elpt-muted);
  text-align: center;
}
.elpt-note strong {
  color: var(--elpt-accent-bright);
  font-weight: 600;
}
