/* =========================
   UTILITIES.CSS (SAFE WORDPRESS VERSION)
========================= */


/* ================= TEXT ALIGN ================= */

.text-center { text-align: center !important; }
.text-right { text-align: right !important; }
.text-left { text-align: left !important; }
.text-justify { text-align: justify !important; }


/* ================= DISPLAY ================= */

.u-hidden { display: none !important; }   /* 🔥 renamed to avoid conflict */
.u-block { display: block !important; }
.u-inline { display: inline !important; }
.u-inline-block { display: inline-block !important; }

.u-flex {
  display: flex !important;
}


/* ================= FLEX HELPERS ================= */

.u-flex-center {
  display: flex !important;
  justify-content: center;
  align-items: center;
}

.u-flex-between {
  display: flex !important;
  justify-content: space-between;
  align-items: center;
}


/* ================= SPACING (SAFE) ================= */

.mt-5  { margin-top: 5px !important; }
.mt-10 { margin-top: 10px !important; }
.mt-15 { margin-top: 15px !important; }
.mt-20 { margin-top: 20px !important; }

.mb-5  { margin-bottom: 5px !important; }
.mb-10 { margin-bottom: 10px !important; }
.mb-15 { margin-bottom: 15px !important; }
.mb-20 { margin-bottom: 20px !important; }

.mr-5  { margin-right: 5px !important; }
.ml-5  { margin-left: 5px !important; }


/* ================= PADDING ================= */

.pt-5  { padding-top: 5px !important; }
.pt-10 { padding-top: 10px !important; }
.pt-15 { padding-top: 15px !important; }

.pb-5  { padding-bottom: 5px !important; }
.pb-10 { padding-bottom: 10px !important; }
.pb-15 { padding-bottom: 15px !important; }

.pr-5  { padding-right: 5px !important; }
.pl-5  { padding-left: 5px !important; }


/* ================= WIDTH (SAFE RENAME) ================= */

.w-100 { width: 100% !important; }
.w-75  { width: 75% !important; }
.w-50  { width: 50% !important; }
.w-25  { width: 25% !important; }


/* ================= COLORS ================= */

.text-primary { color: #ec2e47 !important; }
.text-secondary { color: #002248 !important; }
.text-gray { color: #777 !important; }

.bg-primary {
  background: #ec2e47 !important;
  color: #fff !important;
}

.bg-secondary {
  background: #002248 !important;
  color: #fff !important;
}


/* ================= BORDER ================= */

.border { border: 1px solid #ddd !important; }
.border-radius { border-radius: 6px !important; }
.rounded { border-radius: 12px !important; }


/* ================= SHADOW ================= */

.shadow-sm {
  box-shadow: 0 2px 5px rgba(0,0,0,0.1) !important;
}

.shadow {
  box-shadow: 0 5px 15px rgba(0,0,0,0.15) !important;
}


/* ================= OVERFLOW ================= */

.overflow-hidden { overflow: hidden !important; }
.overflow-auto { overflow: auto !important; }


/* ================= CURSOR ================= */

.cursor-pointer { cursor: pointer !important; }


/* ================= OPACITY ================= */

.opacity-50 { opacity: 0.5 !important; }
.opacity-75 { opacity: 0.75 !important; }


/* ================= Z-INDEX (SAFE) ================= */

.z-1 { z-index: 1 !important; }
.z-10 { z-index: 10 !important; }
.z-100 { z-index: 100 !important; }
.z-999 { z-index: 999 !important; }
.z-max { z-index: 9999 !important; }