/* ============================================
   OTHER SERVICES — THEME 10: ESPRESSO MIST
   ============================================ */

:root {
  /* ===== COLORS ===== */
  --ebosp20-section-services-bg: #efe8de;
  --ebosp20-section-other-bg: #ffffff;
  --ebosp20-title-color: #2a211b;
  --ebosp20-item-bg: #ffffff;
  --ebosp20-item-border-color: #e4dcd1;
  --ebosp20-item-shadow: 0 14px 24px -20px rgba(42, 33, 27, 0.4);
  --ebosp20-item-link-color: #2a211b;
  --ebosp20-item-link-hover-color: #5b4636;
  --ebosp20-item-desc-color: #6f6157;

  /* ===== TYPOGRAPHY ===== */
  --ebosp20-title-font-size: 28px;
  --ebosp20-title-font-weight: 800;
  --ebosp20-title-margin-bottom: 18px;
  --ebosp20-item-link-font-weight: 700;
  --ebosp20-item-desc-font-size: 13px;

  /* ===== SPACING ===== */
  --ebosp20-section-padding: 48px 0;
  --ebosp20-container-padding: 0 20px;
  --ebosp20-container-max-width: 1200px;
  --ebosp20-list-gap: 16px;
  --ebosp20-item-padding: 12px;
  --ebosp20-item-desc-margin-top: 8px;

  /* ===== BORDER ===== */
  --ebosp20-item-border-radius: 22px;
  --ebosp20-item-border-width: 1px;

  /* ===== RESPONSIVE ===== */
  --ebosp20-list-columns-desktop: repeat(3, 1fr);
  --ebosp20-list-columns-tablet: repeat(2, 1fr);
  --ebosp20-list-columns-mobile: 1fr;
}

/* ===== SECTION ===== */
.ebosp20-section {
  padding: var(--ebosp20-section-padding);
}

.ebosp20-container {
  max-width: var(--ebosp20-container-max-width);
  margin: 0 auto;
  padding: var(--ebosp20-container-padding);
}

/* ===== TITLE ===== */
.ebosp20-title {
  font-size: var(--ebosp20-title-font-size);
  font-weight: var(--ebosp20-title-font-weight);
  margin-bottom: var(--ebosp20-title-margin-bottom);
  color: var(--ebosp20-title-color);
}

/* ===== GRID ===== */
.ebosp20-list {
  display: grid;
  grid-template-columns: var(--ebosp20-list-columns-desktop);
  gap: var(--ebosp20-list-gap);
}

/* ===== ITEM ===== */
.ebosp20-item {
  background: var(--ebosp20-item-bg);
  border: var(--ebosp20-item-border-width) solid var(--ebosp20-item-border-color);
  border-radius: var(--ebosp20-item-border-radius);
  padding: var(--ebosp20-item-padding);
  box-shadow: var(--ebosp20-item-shadow);
}

.ebosp20-item a {
  display: block;
  color: var(--ebosp20-item-link-color);
  text-decoration: none;
  font-weight: var(--ebosp20-item-link-font-weight);
}

.ebosp20-item p {
  margin: var(--ebosp20-item-desc-margin-top) 0 0;
  color: var(--ebosp20-item-desc-color);
  font-size: var(--ebosp20-item-desc-font-size);
}

.ebosp20-item a:hover {
  color: var(--ebosp20-item-link-hover-color);
}

/* ===== BACKGROUNDS ===== */
.ebosp20-services {
  background: var(--ebosp20-section-services-bg);
}

.ebosp20-other {
  background: var(--ebosp20-section-other-bg);
}

/* ===== RESPONSIVE ===== */
@media (max-width: 992px) {
  .ebosp20-list {
    grid-template-columns: var(--ebosp20-list-columns-tablet);
  }
}

@media (max-width: 640px) {
  .ebosp20-list {
    grid-template-columns: var(--ebosp20-list-columns-mobile);
  }
}

@media (max-width: 768px) {
  .ebosp20-container { padding: 0 0.75rem !important; }
}
@media (max-width: 480px) {
  .ebosp20-container { padding: 0 0.625rem !important; }
}
@media (max-width: 380px) {
  .ebosp20-container { padding: 0 0.5rem !important; }
}


/* === MOBILE-COMPACT DISTRIBUTED: OTHER-SERVICES 480 === */
@media (max-width: 480px) {
  .ebosp20-container {
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
    padding-inline: 0.75rem !important;
  }
}


/* === MOBILE-COMPACT DISTRIBUTED: OTHER-SERVICES 768 INLINE FIX === */
@media (max-width: 768px) {
  .ebosp20-container {
    padding-inline: 0.75rem !important;
  }
}


/* === MOBILE-COMPACT DISTRIBUTED: OTHER-SERVICES 380 INLINE FIX === */
@media (max-width: 380px) {
  .ebosp20-container {
    padding-inline: 0.5rem !important;
  }
}

/* THEME10 LAYER */
.ebosp20-title { font-family: "El Messiri", sans-serif; }
.ebosp20-item { transition: transform .35s cubic-bezier(.2, .8, .2, 1), box-shadow .3s ease, border-color .3s ease; }
.ebosp20-item:hover { transform: translateY(-6px); border-color: #5b4636; box-shadow: 0 26px 36px -24px rgba(91, 70, 54, .55); }
@supports (animation-timeline: view()) {
  .ebosp20-item { animation: t10-rise linear both; animation-timeline: view(); animation-range: entry 0% entry 65%; }
}
