/* ================================================
   Trabian Custom Theme - Swoosh Identity
   Deep ink navy #0c1b2e + swoosh blue #0f84ff
   Distinct from EzRelocation orange clone
   ================================================ */

:root {
  --trabian-ink: #0b1b30;
  --trabian-slate: #2a3b55;
  --trabian-blue: #0f84ff;
  --trabian-blue-dark: #0a68cc;
  --trabian-sky: #e7f1ff;
  --trabian-ice: #f3f7ff;
  --trabian-cyan: #4aa8ff;
}

/* Header: navy underline active state, swoosh hover */
.nav-link {
  color: #2a3b55;
  font-weight: 600;
}
.nav-link:hover,
.nav-link.active {
  color: #0a5fc0;
  background: #e7f1ff;
}
.nav-link.active::after {
  content: '';
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 4px;
  height: 3px;
  border-radius: 99px;
  background: #0f84ff;
}

/* Logo text: Tra ink + bian blue to match T dark + swoosh */
.logo-ez { color: #0c1b2e !important; font-weight: 800; letter-spacing: -0.02em; }
.logo-rest { color: #0a68cc !important; font-weight: 800; letter-spacing: -0.02em; }
.footer-brand .logo-ez { color: #fff !important; }
.footer-brand .logo-rest { color: #4aa8ff !important; }

/* Hero dark + grid + swoosh line - fix contrast + gap */
.hero-premium {
  margin-top: 0 !important;
  padding-top: 130px !important;
  padding-bottom: 100px !important;
}
.hero-premium::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: radial-gradient(ellipse 80% 70% at 50% 30%, black 30%, transparent 75%);
  -webkit-mask-image: radial-gradient(ellipse 80% 70% at 50% 30%, black 30%, transparent 75%);
  pointer-events: none;
  z-index: 0;
}
.hero-premium::after {
  content: none !important;
  display: none !important;
}
/* Hide muddy stock photo overlay - clean grid hero instead */
.hero-image-overlay { display: none !important; }
/* Swoosh speed line under hero title - homepage dark hero only */
.hero-premium .hero-title {
  position: relative;
  color: #ffffff !important;
}
.hero-premium .hero-subtitle { color: #c3d5ee !important; }
.hero-premium .trust-number { color: #ffffff !important; }
.hero-premium .trust-label { color: #9db4d4 !important; }
.hero-premium .perk-v2 { color: #d6e6ff !important; }
.hero-premium .perk-v2 i { color: #4aa8ff !important; }
.hero-grid { z-index: 2; }
.hero-left { z-index: 2; }
.hero-image-overlay { opacity: 0.22 !important; }
.hero-title::after {
  content: '';
  display: block;
  width: 72px;
  height: 4px;
  margin-top: 18px;
  border-radius: 99px;
  background: #0f84ff;
}

/* Form card: navy top bar + blue focus */
.form-card-premium {
  border: 1px solid #dbe7ff;
  border-top: 4px solid #0f84ff;
  box-shadow: 0 30px 60px -15px rgba(12,27,46,0.45);
}
.form-card-premium .form-header h2 { color: #0c1b2e; }
.text-accent, .form-header h2 .text-accent { color: #0f84ff !important; }
.premium-form input:focus,
.premium-form textarea:focus,
.premium-form select:focus {
  border-color: #0f84ff !important;
  box-shadow: 0 0 0 4px rgba(15,132,255,0.15) !important;
  outline: none;
}

/* Service cards: ice bg, navy titles, blue hover */
.section-services { background: #f3f7ff !important; }
.card-premium {
  background: #fff;
  border: 1px solid #dbe7ff;
}
.card-premium:hover {
  border-color: #0f84ff;
  box-shadow: 0 24px 48px -12px rgba(15,132,255,0.3);
}
.card-premium h3 { color: #0c1b2e; }
.card-premium .pillar-icon {
  background: #0b1b30;
  color: #fff;
}
.text-link { color: #0a5fc0; }
.text-link:hover { color: #0f84ff; }

/* Why cards */
.why-card {
  background: #fff;
  border: 1px solid #dbe7ff;
  border-radius: 20px;
}
.why-card:hover {
  border-color: #0f84ff;
  box-shadow: 0 20px 40px -12px rgba(15,132,255,0.28);
}
.why-icon {
  background: #0b1b30 !important;
  color: #fff !important;
}

/* Section titles: navy + blue accent word */
.section-title, .section-title-new { color: #0c1b2e; letter-spacing: -0.02em; }
.text-accent, span.text-accent { color: #0f84ff !important; }
.section-kicker {
  color: #0a5fc0;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-weight: 800;
}

/* Testimonial / story cards */
.story-card-v2 {
  border: 1px solid #dbe7ff;
  overflow: hidden;
}
.story-card-v2:hover {
  box-shadow: 0 24px 48px -12px rgba(12,27,46,0.25);
  border-color: #0f84ff;
}
.story-category {
  background: #0c1b2e !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,0.2);
}

/* CTA + footer */
.cta-badge {
  background: rgba(74,168,255,0.15);
  border: 1px solid rgba(74,168,255,0.4);
  color: #cfe7ff;
}
.footer {
  background: linear-gradient(180deg, #0c1b2e 0%, #081323 100%) !important;
  border-top: 3px solid #0f84ff;
}
.footer-heading { color: #fff; }
.footer-logo {
  background: #fff !important;
  border-radius: 12px !important;
  padding: 6px 10px !important;
  height: 48px !important;
  width: auto !important;
  max-width: 190px !important;
  object-fit: contain !important;
}
.footer-brand { gap: 10px; }
.footer-link { color: #9db4d4; }
.footer-link:hover { color: #4aa8ff; }
.footer-tagline { color: #8aa3c7; }
.social-link {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.12);
}
.social-link:hover {
  background: #0f84ff;
  border-color: #0f84ff;
  color: #fff;
}

/* Floating buttons */
.call-float { background: #0c1b2e !important; }
.whatsapp-float { box-shadow: 0 10px 24px rgba(15,132,255,0.35); }

/* Cost estimator slider */
.premium-slider { accent-color: #0f84ff; }
#distanceValue, #homeSizeValue {
  background: #e7f1ff !important;
  color: #0a5fc0 !important;
}
#calculatedCost { color: #0c1b2e !important; }

/* Buttons - solid Trabian blue */
.btn-primary, .btn.btn-primary {
  background: #0f84ff !important;
  border: none;
}
.btn-primary:hover { background: #0a68cc !important; transform: translateY(-2px); }

/* Mobile quote btn */
.mobile-header-quote-btn {
  background: #0a68cc;
  color: #fff;
}
