/* ═══════════════════════════════════════
   AES Principles Section — v1.0.0
═══════════════════════════════════════ */

.elementor-widget-aes_principles .aesp-section,
.aesp-section {
  background-color: #faf8f4;
  width: 100%;
  box-sizing: border-box;
  padding: 60px 40px;
}

.aesp-inner {
  max-width: 1100px;
  margin: 0 auto;
}

/* ── Heading ── */
.elementor-widget-aes_principles .aesp-heading,
.aesp-heading {
  color: #212427;
  margin: 0 0 14px 0 !important;
  padding: 0 !important;
  background: none !important;
  border: none !important;
  line-height: 1.2;
}

.elementor-widget-aes_principles .aesp-subtitle,
.aesp-subtitle {
  color: #6b6560;
  margin: 0 0 40px 0 !important;
  padding: 0 !important;
}

/* ── List ── */
.aesp-list { width: 100%; }

.aesp-item {
  display: flex;
  align-items: flex-start;
  gap: 22px;
  margin-bottom: 36px;
}
.aesp-item:last-child { margin-bottom: 0 !important; }

/* Number column */
.aesp-number-col {
  flex: 0 0 56px;
  width: 56px;
  display: flex;
  justify-content: flex-start;
  padding-top: 2px;
}

.elementor-widget-aes_principles .aesp-number,
.aesp-number {
  color: #c8b896;
  font-weight: 400;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

/* Icon column */
.aesp-icon-col {
  flex-shrink: 0;
  display: flex;
  align-items: flex-start;
  padding-top: 2px;
}

.elementor-widget-aes_principles .aesp-icon,
.aesp-icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: #f0ebe3;
  border: 1px solid #D4C4A7;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.aesp-icon i {
  color: #212427;
  font-size: 20px;
  line-height: 1;
}
.aesp-icon svg {
  width: 20px;
  height: 20px;
  fill: #212427;
}

/* Content */
.aesp-content {
  flex: 1;
  min-width: 0;
}

.elementor-widget-aes_principles .aesp-title,
.aesp-title {
  color: #212427;
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
  background: none !important;
  line-height: 1.35;
  font-weight: 600;
}

.elementor-widget-aes_principles .aesp-text,
.aesp-text {
  color: #6b6560;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.75;
}

/* ── Mobile ── */
@media (max-width: 768px) {
  .aesp-section { padding: 40px 20px !important; }
  .aesp-item {
    gap: 16px;
    margin-bottom: 28px;
  }
  .aesp-number-col { flex: 0 0 36px; width: 36px; }
  .aesp-icon-col .aesp-icon {
    width: 38px !important;
    height: 38px !important;
  }
  .aesp-icon i  { font-size: 16px !important; }
  .aesp-icon svg{ width: 16px !important; height: 16px !important; }
}

@media (max-width: 480px) {
  .aesp-item {
    flex-wrap: wrap;
  }
  .aesp-number-col,
  .aesp-icon-col {
    flex: 0 0 auto;
  }
}
