:root{
  --rl-black:#111113;
  --rl-ink:#17171A;
  --rl-gold:#D2A24C;
  --rl-white:#FFFFFF;
  --rl-cream:#F7F6F3;
  --rl-grey:#6C6C70;
  --rl-line:rgba(17,17,19,0.08);
  --rl-font-head:'DM Serif Display', Georgia, serif;
  --rl-font-body:'Inter', -apple-system, sans-serif;
}

/* ===== GLOBAL FONTS ===== */
body, p, li, a, span, div, input, textarea, select, button,
.elementor-widget-text-editor,
.elementor-widget-icon-box .elementor-icon-box-description,
.elementor-icon-list-text{
  font-family: var(--rl-font-body) !important;
}
h1,h2,h3,h4,h5,h6,
.elementor-heading-title,
.elementor-widget-icon-box .elementor-icon-box-title{
  font-family: var(--rl-font-head) !important;
  letter-spacing:.2px;
}
/* Small uppercase eyebrows keep body font */
.rl-eyebrow .elementor-heading-title{ font-family:var(--rl-font-body) !important; }

/* ===== SERVICES CARDS ===== */
.rl-svc-card{
  background:var(--rl-white);
  border:1px solid var(--rl-line);
  border-radius:16px;
  box-shadow:0 1px 2px rgba(17,17,19,0.04);
  transition:transform .4s cubic-bezier(.25,.46,.45,.94),
             box-shadow .4s cubic-bezier(.25,.46,.45,.94),
             border-color .4s ease;
}
.rl-svc-card:hover{
  transform:translateY(-8px);
  box-shadow:0 18px 44px rgba(17,17,19,0.12);
  border-color:rgba(210,162,76,0.55);
}
.rl-svc-card .elementor-icon-box-icon{ transition:transform .4s cubic-bezier(.25,.46,.45,.94); }
.rl-svc-card:hover .elementor-icon-box-icon{ transform:translateY(-3px) scale(1.06); }
.rl-svc-card .elementor-icon{ transition:background .35s ease,color .35s ease; }
.rl-svc-card:hover .elementor-icon{ background:var(--rl-gold) !important; color:var(--rl-black) !important; }

/* ===== FLEET CARDS ===== */
.rl2-fleet-card{
  transition:transform .45s cubic-bezier(.25,.46,.45,.94),
             box-shadow .45s cubic-bezier(.25,.46,.45,.94),
             border-color .45s ease;
}
.rl2-fleet-card:hover{
  transform:translateY(-8px);
  box-shadow:0 22px 50px rgba(0,0,0,0.28);
  border-color:rgba(210,162,76,0.5) !important;
}
.rl2-fleet-card img{ transition:transform .55s cubic-bezier(.25,.46,.45,.94); }
.rl2-fleet-card:hover img{ transform:scale(1.05); }

/* ===== MINIMALIST BUTTONS WITH SHADOW ===== */
.elementor-button{
  font-family:var(--rl-font-body) !important;
  font-weight:600 !important;
  letter-spacing:.3px;
  border-radius:8px !important;
  transition:all .35s cubic-bezier(.25,.46,.45,.94) !important;
  box-shadow:0 4px 14px rgba(17,17,19,0.10) !important;
}
.elementor-button:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 10px 26px rgba(210,162,76,0.28) !important;
}
.elementor-button:active{
  transform:translateY(0) !important;
  box-shadow:0 3px 10px rgba(17,17,19,0.12) !important;
}

::selection{ background:var(--rl-gold); color:var(--rl-black); }

@media (max-width:1024px){
  .rl-svc-card:hover,.rl2-fleet-card:hover{ transform:translateY(-4px); }
}
