/*--------------------------------------------------------------
📐 Display & Flex
--------------------------------------------------------------*/

.d-block        { display: block !important; }
.d-inline       { display: inline !important; }
.d-inline-block { display: inline-block !important; }
.d-flex         { display: flex !important; }
.d-inline-flex  { display: inline-flex !important; }
.d-grid         { display: grid !important; }
.d-none         { display: none !important; }

.flex-row       { flex-direction: row !important; }
.flex-col       { flex-direction: column !important; }
.flex-wrap      { flex-wrap: wrap !important; }
.flex-nowrap    { flex-wrap: nowrap !important; }

.justify-start      { justify-content: flex-start !important; }
.justify-end        { justify-content: flex-end !important; }
.justify-center     { justify-content: center !important; }
.justify-between    { justify-content: space-between !important; }
.justify-around     { justify-content: space-around !important; }

.items-start    { align-items: flex-start !important; }
.items-center   { align-items: center !important; }
.items-end      { align-items: flex-end !important; }

.self-start     { align-self: flex-start !important; }
.self-center    { align-self: center !important; }
.self-end       { align-self: flex-end !important; }

.gap-xs         { gap: 0.25rem !important; }
.gap-sm         { gap: 0.5rem !important; }
.gap-md         { gap: 1rem !important; }
.gap-lg         { gap: 2rem !important; }

/*--------------------------------------------------------------
🎨 Couleurs
--------------------------------------------------------------*/

.text-white     { color: white !important; }
.text-muted     { color: #9faabf !important; }
.text-blue      { color: #8bc4ff !important; }
.text-soft      { color: #e0e6f2 !important; }

.bg-dark        { background-color: #0f1117 !important; }
.bg-panel       { background-color: #0e192a !important; }
.bg-input       { background-color: #10151f !important; }
.bg-light       { background-color: #1a1f2c !important; }
.bg-blue        { background-color: #8bc4ff !important; }
.bg-none        { background-color: transparent !important; }

/*--------------------------------------------------------------
🧱 Padding & Margin
--------------------------------------------------------------*/

.p-0     { padding: 0 !important; }
.p-xs    { padding: 0.25rem !important; }
.p-sm    { padding: 0.5rem !important; }
.p-md    { padding: 1rem !important; }
.p-lg    { padding: 2rem !important; }

.pt-sm   { padding-top: 0.5rem !important; }
.pb-sm   { padding-bottom: 0.5rem !important; }
.pl-sm   { padding-left: 0.5rem !important; }
.pr-sm   { padding-right: 0.5rem !important; }

.m-0     { margin: 0 !important; }
.m-xs    { margin: 0.25rem !important; }
.m-sm    { margin: 0.5rem !important; }
.m-md    { margin: 1rem !important; }
.m-lg    { margin: 2rem !important; }

.mt-sm   { margin-top: 0.5rem !important; }
.mb-sm   { margin-bottom: 0.5rem !important; }
.ml-sm   { margin-left: 0.5rem !important; }
.mr-sm   { margin-right: 0.5rem !important; }

.mt-md   { margin-top: 1rem !important; }
.mb-md   { margin-bottom: 1rem !important; }
.ml-md   { margin-left: 1rem !important; }
.mr-md   { margin-right: 1rem !important; }

.mt-lg   { margin-top: 2rem !important; }
.mb-lg   { margin-bottom: 2rem !important; }
.ml-lg   { margin-left: 2rem !important; }
.mr-lg   { margin-right: 2rem !important; }

.mx-auto { margin-left: auto !important; margin-right: auto !important; }

/*--------------------------------------------------------------
🧩 Typo
--------------------------------------------------------------*/

.text-xs     { font-size: 0.75rem !important; }
.text-sm     { font-size: 0.875rem !important; }
.text-md     { font-size: 1rem !important; }
.text-lg     { font-size: 1.25rem !important; }
.text-xl     { font-size: 1.5rem !important; }

.text-bold   { font-weight: bold !important; }
.text-normal { font-weight: normal !important; }
.text-light  { font-weight: 300 !important; }
.text-center { text-align: center !important; }
.uppercase   { text-transform: uppercase !important; }

/*--------------------------------------------------------------
🧱 Bordures & Rayon
--------------------------------------------------------------*/

.rounded-sm    { border-radius: 4px !important; }
.rounded-md    { border-radius: 8px !important; }
.rounded-lg    { border-radius: 12px !important; }
.rounded-full  { border-radius: 9999px !important; }

.border        { border: 1px solid var(--nexa-blue) !important; }
.border-none   { border: none !important; }
.border-b-2    { border-bottom: 2px solid var(--nexa-blue) !important; }

.shadow-sm     { box-shadow: 0 1px 2px rgba(0,0,0,0.05) !important; }
.shadow-md     { box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important; }
.shadow-lg     { box-shadow: 0 6px 12px rgba(0,0,0,0.15) !important; }

/*--------------------------------------------------------------
🎛️ Typo & Couleurs
--------------------------------------------------------------*/
.ds-label-bold {
  font-weight: 600;
  color: var(--nexa-blue, #8bc4ff);
  text-transform: uppercase;
  font-size: 0.95rem;
  letter-spacing: 0.03em;
}

.ds-label-light {
  font-weight: 400;
  color: #9faabf;
}

.ds-text-muted {
  color: #9faabf;
}

.ds-text-white {
  color: #fdf8ed;
}

.ds-text-xl {
  font-size: 1.25rem;
}


/*--------------------------------------------------------------
📐 Layout
--------------------------------------------------------------*/
.ds-padded {
  padding: 1rem;
}

.ds-box {
  background-color: #0e192a;
  padding: 1.5rem;
  border-radius: 12px;
  box-shadow: 0 0 0 1px rgba(255,255,255,0.05);
}

/*--------------------------------------------------------------
🌀 Effets
--------------------------------------------------------------*/
.ds-glow {
  box-shadow: 0 0 12px 2px rgba(139, 196, 255, 0.25);
}

.ds-border-bottom {
  border-bottom: 1px solid #8bc4ff;
}

.ds-highlight {
  background-color: rgba(139, 196, 255, 0.05);
}

/*--------------------------------------------------------------
🌀 background
--------------------------------------------------------------*/

/*.nexa-hero-layout {
  display: grid;
  grid-template-columns: 1fr 700px 1fr;
  min-height: 100vh;
  background-color: #0e1116;
  overflow: hidden;
}

.nexa-hero-left {
  background-image: url("/themes/custom/nexa_claro/img/nexa-oracle.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center left;
}

.nexa-hero-right {
  background-image: url("/themes/custom/nexa_claro/img/nexa-cube.png");
  background-size: 400px;
  background-repeat: no-repeat;
  background-position: center right;
}

.nexa-hero-form-wrapper {
  background-color: rgba(12, 22, 40, 0.88);
  padding: 2.5rem;
  border-radius: 16px;
  max-width: 700px;
  width: 100%;
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(10px);
  z-index: 2;
  color: #fff;
}
.page-content {
    padding: 0;
}*/
