/* MovePro.online v3 — layout & style overhaul
   MARKER: movepro-layout-v3-20260825 */

:root {
  --mp-primary: #0A4D68;
  --mp-primary-light: #E8F4F8;
  --mp-primary-dark: #083D54;
  --mp-primary-darker: #062F41;
  --mp-accent: #F4A261;
  --mp-accent-deep: #E76F51;
  --mp-bg: #F7F5F2;
  --mp-card: #ffffff;
  --mp-text: #14212B;
  --mp-muted: #5C6B76;
  --mp-border: #E4E0D8;
  --mp-radius: 14px;
  --mp-shadow: 0 10px 40px rgba(10, 77, 104, .08);
  --mp-font: "Outfit", system-ui, sans-serif;
  --mp-display: "Syne", "Outfit", system-ui, sans-serif;
  --mp-glow-green: rgba(10,77,104,.12);
  --mp-glow-amber: rgba(244,162,97,.18);
}

html { scroll-behavior: smooth; }
body {
  font-family: var(--mp-font) !important;
  background: var(--mp-bg) !important;
  color: var(--mp-text) !important;
  letter-spacing: -.01em;
}

h1, h2, h3, .mp-logo-text, .mp-hero-full h1, .mp-section-title,
.mp-bottom-cta h2, .mp-feat-card h3, .mp-how-card h3 {
  font-family: var(--mp-display) !important;
  letter-spacing: -.03em;
  font-weight: 700;
}

/* Header — cleaner glass */
.mp-header {
  background: rgba(247, 245, 242, .82) !important;
  border-bottom: 1px solid rgba(20, 33, 43, .06) !important;
  backdrop-filter: blur(16px) saturate(1.2);
  -webkit-backdrop-filter: blur(16px) saturate(1.2);
  padding: 14px 0 !important;
}
.mp-header.scrolled { box-shadow: 0 8px 30px rgba(10,77,104,.08) !important; }
.mp-logo-text { font-size: 1.35rem !important; font-weight: 600 !important; color: var(--mp-text) !important; }
.mp-logo-text strong { color: var(--mp-primary) !important; font-weight: 800 !important; }
.mp-logo-icon svg { stroke: var(--mp-primary) !important; }
.mp-nav-links a, .mp-nav-link {
  color: var(--mp-muted) !important;
  font-weight: 600 !important;
  font-size: .86rem !important;
}
.mp-nav-links a:hover, .mp-nav-link:hover {
  color: var(--mp-primary) !important;
  background: var(--mp-primary-light) !important;
}
.mp-header-cta {
  background: var(--mp-primary) !important;
  border-radius: 999px !important;
  padding: 10px 20px !important;
  font-weight: 700 !important;
  box-shadow: 0 6px 20px rgba(10,77,104,.25);
  transition: transform .25s ease, box-shadow .25s ease !important;
}
.mp-header-cta:hover {
  background: var(--mp-primary-dark) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 28px rgba(10,77,104,.3);
}
.mp-lang a.active, .mp-lang a:hover {
  color: var(--mp-primary) !important;
  background: var(--mp-primary-light) !important;
}

/* Hero — one composition, brand-first, full bleed */
.mp-hero-full {
  min-height: 100vh !important;
  min-height: 100dvh !important;
  padding: 110px 20px 72px !important;
  background: #071820 !important;
  align-items: flex-end !important;
}
.mp-hero-overlay {
  background:
    linear-gradient(105deg, rgba(7,24,32,.88) 0%, rgba(7,24,32,.55) 48%, rgba(7,24,32,.25) 100%),
    linear-gradient(0deg, rgba(7,24,32,.55) 0%, transparent 45%) !important;
}
.mp-hero-carousel .mp-hero-slide {
  animation: mpKen 18s ease-in-out infinite alternate;
  transform-origin: center;
}
@keyframes mpKen {
  from { transform: scale(1.05); }
  to { transform: scale(1.14); }
}
.mp-orb { display: none !important; }

.mp-hero-layout {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  display: grid !important;
  grid-template-columns: 1.15fr .85fr !important;
  gap: 36px !important;
  align-items: end !important;
}
@media (max-width: 900px) {
  .mp-hero-layout { grid-template-columns: 1fr !important; }
  .mp-hero-right { order: -1; }
}

.mp-hero-brand {
  font-family: var(--mp-display);
  font-size: clamp(2.8rem, 8vw, 5.2rem);
  font-weight: 800;
  line-height: .92;
  color: #fff;
  margin: 0 0 18px;
  letter-spacing: -.04em;
  animation: mpRise .9s cubic-bezier(.2,.8,.2,1) both;
}
.mp-hero-brand strong { color: var(--mp-accent); font-weight: 800; }

.mp-hero-full h1 {
  font-size: clamp(1.55rem, 3.6vw, 2.35rem) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  max-width: 14ch;
  margin: 0 0 14px !important;
  animation: mpRise .9s .08s cubic-bezier(.2,.8,.2,1) both;
}
.mp-hero-accent { color: var(--mp-accent) !important; }
.mp-hero-sub {
  font-size: 1.05rem !important;
  line-height: 1.55 !important;
  color: rgba(255,255,255,.78) !important;
  max-width: 34ch !important;
  margin: 0 0 28px !important;
  animation: mpRise .9s .14s cubic-bezier(.2,.8,.2,1) both;
}

/* Hero budget: hide clutter in first viewport */
.mp-hero-badge,
.mp-hero-stats,
.mp-hero-trust-badges,
.mp-hero-conv { display: none !important; }

.mp-hero-cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  animation: mpRise .9s .2s cubic-bezier(.2,.8,.2,1) both;
}
.mp-hero-cta-row .mp-btn-primary,
.mp-hero-left > a.mp-btn-primary,
.mp-hero-left .mp-header-cta {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  background: var(--mp-accent) !important;
  color: #14212B !important;
  font-weight: 800 !important;
  font-size: 1rem !important;
  padding: 14px 26px !important;
  border-radius: 999px !important;
  text-decoration: none !important;
  border: 0 !important;
  box-shadow: 0 8px 20px rgba(10,77,104,.18);
  transition: transform .25s ease, box-shadow .25s ease;
}
.mp-hero-cta-row .mp-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(10,77,104,.22);
}

.mp-hero-right {
  animation: mpRise .95s .18s cubic-bezier(.2,.8,.2,1) both;
}
.mp-hero-map-wrap,
.mp-hero-right > div {
  border-radius: 22px !important;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.14) !important;
  box-shadow: 0 24px 60px rgba(0,0,0,.35) !important;
  background: rgba(255,255,255,.06) !important;
  backdrop-filter: blur(8px);
}
.mp-hero-gmap { min-height: 320px !important; }

@keyframes mpRise {
  from { opacity: 0; transform: translateY(22px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Sections */
.mp-section { padding: 88px 0 !important; }
.mp-section-alt { background: #fff !important; }
.mp-section-badge {
  display: inline-block !important;
  background: transparent !important;
  color: var(--mp-primary) !important;
  border: 0 !important;
  padding: 0 !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  margin-bottom: 10px !important;
}
.mp-section-title {
  font-size: clamp(1.7rem, 3vw, 2.4rem) !important;
  margin-bottom: 12px !important;
  color: var(--mp-text) !important;
}
.mp-section-sub {
  color: var(--mp-muted) !important;
  font-size: 1.05rem !important;
  max-width: 42ch;
  margin: 0 auto 40px !important;
}

/* How / features — less cardy */
.mp-how-grid, .mp-feat-grid, .mp-tools-grid {
  gap: 28px !important;
}
.mp-how-card, .mp-feat-card, .mp-tool-card {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 8px 4px !important;
  border-radius: 0 !important;
}
.mp-how-card h3, .mp-feat-card h3, .mp-tool-card h3 {
  font-size: 1.15rem !important;
  margin: 12px 0 8px !important;
}
.mp-how-num {
  width: 44px !important;
  height: 44px !important;
  border-radius: 12px !important;
  background: var(--mp-primary) !important;
  color: #fff !important;
  font-family: var(--mp-display) !important;
  font-weight: 800 !important;
}
.mp-feat-icon, .mp-tool-icon {
  background: var(--mp-primary-light) !important;
  color: var(--mp-primary) !important;
  border-radius: 14px !important;
}

/* Calculator panel */
.mp-calc-wrap, #calculator {
  scroll-margin-top: 90px;
}
.mp-calc-card, .mp-wizard, .mp-calc-panel {
  background: #fff !important;
  border: 1px solid var(--mp-border) !important;
  border-radius: 24px !important;
  box-shadow: var(--mp-shadow) !important;
}
.mp-btn-primary, .mp-wizard .mp-btn-primary, button.mp-btn-primary {
  background: var(--mp-primary) !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
}
.mp-btn-primary:hover { background: var(--mp-primary-dark) !important; }

/* FAQ / CTA */
.mp-faq-item {
  border: 0 !important;
  border-bottom: 1px solid var(--mp-border) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.mp-bottom-cta {
  background: linear-gradient(135deg, var(--mp-primary-darker), var(--mp-primary)) !important;
  border-radius: 28px !important;
  overflow: hidden;
}
.mp-bottom-cta .mp-btn-primary {
  background: var(--mp-accent) !important;
  color: #14212B !important;
}

/* Footer */
.mp-footer {
  background: #0B1C24 !important;
  color: rgba(255,255,255,.72) !important;
}
.mp-footer a { color: rgba(255,255,255,.85) !important; }
.mp-footer a:hover { color: var(--mp-accent) !important; }

/* Soft entrance for below-fold sections */
.mp-section .mp-how-card,
.mp-section .mp-feat-card,
.mp-section .mp-tool-card,
.mp-faq-item {
  animation: mpRise .7s ease both;
}
.mp-how-card:nth-child(2), .mp-feat-card:nth-child(2), .mp-tool-card:nth-child(2) { animation-delay: .06s; }
.mp-how-card:nth-child(3), .mp-feat-card:nth-child(3), .mp-tool-card:nth-child(3) { animation-delay: .12s; }
.mp-feat-card:nth-child(4), .mp-tool-card:nth-child(4) { animation-delay: .18s; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* Mobile menu hard-hide when closed */
.mp-mobile-nav-overlay:not(.mp-mobile-nav-open) {
  visibility: hidden !important;
  pointer-events: none !important;
}
.mp-mobile-nav-overlay.mp-mobile-nav-open {
  visibility: visible !important;
  pointer-events: auto !important;
}
