/* ==========================================================================
   MovePro theme — main stylesheet. Colours come from CSS variables printed by
   the plugin (MovePro_Branding). Fallbacks below keep the theme usable alone.
   ========================================================================== */

:root{
	--mp-primary:#2457d6; --mp-primary-rgb:36,87,214; --mp-primary-dark:#1d47ae; --mp-primary-light:#e9effc; --mp-primary-contrast:#ffffff;
	--mp-accent:#f5a524; --mp-dark:#0e1b33; --mp-dark-rgb:14,27,51; --mp-dark-2:#1b2742;
	--mp-text:#1f2430; --mp-muted:#5c6473; --mp-bg:#ffffff; --mp-soft:#f4f6f8; --mp-border:#e5e8ec;
	--mp-radius:14px; --mp-font-heading:"Poppins",system-ui,sans-serif; --mp-font-body:"Inter",system-ui,sans-serif;
	--mp-shadow:0 10px 30px rgba(15,17,21,.08); --mp-shadow-lg:0 24px 60px rgba(15,17,21,.14);
	--mp-maxw:1180px;
}

*,*::before,*::after{box-sizing:border-box}
body.movepro{margin:0;font-family:var(--mp-font-body);color:var(--mp-text);background:var(--mp-bg);line-height:1.6;-webkit-font-smoothing:antialiased}
.movepro img{max-width:100%;height:auto;display:block}
.movepro a{color:var(--mp-primary);text-decoration:none}
h1,h2,h3,h4{font-family:var(--mp-font-heading);line-height:1.15;color:var(--mp-dark);font-weight:700}
.mp-container{width:100%;max-width:var(--mp-maxw);margin:0 auto;padding:0 20px}
.mp-narrow{max-width:820px}
.mp-center{text-align:center}
.mp-section{padding:84px 0}
.mp-bg-soft{background:var(--mp-soft)}
.mp-bg-dark{background:var(--mp-dark);color:#fff}
.mp-bg-dark h1,.mp-bg-dark h2,.mp-bg-dark h3,.mp-bg-dark h4{color:#fff}

/* ---- Buttons ---- */
.mp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--mp-font-heading);font-weight:600;font-size:15px;line-height:1;padding:14px 22px;border-radius:999px;border:2px solid transparent;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,color .2s;text-align:center}
.mp-btn .dashicons{font-size:18px;width:18px;height:18px}
.mp-btn-primary{background:var(--mp-primary);color:var(--mp-primary-contrast)}
.mp-btn-primary:hover{background:var(--mp-primary-dark);transform:translateY(-2px);box-shadow:0 10px 24px rgba(var(--mp-primary-rgb),.35);color:var(--mp-primary-contrast)}
.mp-btn-ghost{background:transparent;border-color:currentColor;color:inherit}
.mp-btn-ghost:hover{transform:translateY(-2px)}
.mp-btn-sm{padding:10px 16px;font-size:13px}
.mp-btn-lg{padding:17px 30px;font-size:16px}
.mp-btn-block{display:flex;width:100%}
/* Anchor buttons must keep button text colours (override the global link colour). */
.movepro a.mp-btn{text-decoration:none}
.movepro a.mp-btn-primary{color:var(--mp-primary-contrast)}
.movepro a.mp-btn-ghost{color:inherit}

/* ---- Header ---- */
.mp-header{position:sticky;top:0;z-index:1000;background:var(--mp-bg);box-shadow:0 1px 0 var(--mp-border);transition:box-shadow .3s}
.mp-header.is-stuck{box-shadow:var(--mp-shadow)}
.mp-topbar{background:var(--mp-dark);color:#fff;font-size:13px}
.mp-topbar-inner{display:flex;justify-content:space-between;align-items:center;min-height:42px}
.mp-topbar a{color:#fff}
.mp-topbar-phone{display:inline-flex;align-items:center;gap:8px}
.mp-topbar-phone .dashicons{color:var(--mp-primary);font-size:16px;width:16px;height:16px}
.mp-topbar-note{opacity:.7}
.mp-topbar-cta{display:flex;align-items:center;gap:12px}
.mp-topbar-badge{opacity:.75}
.mp-topbar-hours{opacity:.7}
.mp-topbar-cta{gap:16px}

.mp-navbar-inner{display:flex;align-items:center;gap:24px;min-height:74px}
.mp-brand{flex:0 0 auto}
.mp-logo img{height:auto}
.mp-logo-text{font-family:var(--mp-font-heading);font-weight:800;font-size:24px;color:var(--mp-dark)}
.mp-nav{flex:1 1 auto}
.mp-menu{display:flex;gap:4px;list-style:none;margin:0;padding:0;justify-content:center}
.mp-menu li{position:relative}
.mp-menu a{display:block;padding:12px 14px;color:var(--mp-dark);font-family:var(--mp-font-heading);font-weight:500;font-size:15px;border-radius:8px;transition:color .2s,background .2s}
.mp-menu a:hover,.mp-menu .current-menu-item>a{color:var(--mp-primary)}
.mp-menu .sub-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:220px;background:#fff;border:1px solid var(--mp-border);border-radius:12px;box-shadow:var(--mp-shadow);padding:8px;list-style:none;margin:0;opacity:0;visibility:hidden;transform:translateY(8px);transition:all .22s ease;z-index:10}
.mp-menu li:hover>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.mp-menu .sub-menu a{padding:9px 12px;font-weight:400}
.mp-menu .menu-item-has-children>a::after{content:"▾";margin-left:6px;font-size:11px;opacity:.6}
.mp-nav-actions{display:flex;align-items:center;gap:12px}
.mp-nav-phone{display:none;color:var(--mp-dark)}
.mp-burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px}
.mp-burger span{width:24px;height:2px;background:var(--mp-dark);transition:.3s}
.mp-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.mp-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.mp-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Mobile menu */
.mp-mobile-backdrop{position:fixed;inset:0;background:rgba(15,17,21,.5);z-index:1040;opacity:0;visibility:hidden;transition:opacity .3s}
.mp-mobile-backdrop.is-open{opacity:1;visibility:visible}
.mp-mobile-menu{position:fixed;inset:0 0 0 auto;width:min(86vw,360px);background:#fff;z-index:1050;transform:translateX(100%);transition:transform .32s cubic-bezier(.4,0,.2,1);box-shadow:var(--mp-shadow-lg);padding:74px 20px 30px;overflow-y:auto}
.mp-mobile-menu.is-open{transform:translateX(0)}
.mp-mobile-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border:0;background:var(--mp-soft);border-radius:50%;font-size:26px;line-height:1;color:var(--mp-dark);cursor:pointer}
.mp-mobile-list,.mp-mobile-list .sub-menu{list-style:none;margin:0;padding:0}
.mp-mobile-list a{display:block;padding:13px 6px;border-bottom:1px solid var(--mp-border);color:var(--mp-dark);font-family:var(--mp-font-heading);font-weight:500}
.mp-mobile-list .sub-menu a{padding-left:20px;font-weight:400;opacity:.85}
.mp-mobile-actions{margin-top:20px;display:grid;gap:10px}
body.mp-menu-open{overflow:hidden}

/* ---- Hero ---- */
.mp-hero{position:relative;background:var(--mp-dark);color:#fff;padding:110px 0 90px;overflow:hidden}
.mp-hero::before{content:"";position:absolute;inset:-12% 0;background-image:var(--mp-hero-img,none);background-size:cover;background-position:center calc(50% + var(--mp-par,0px));opacity:.5;will-change:background-position}
.mp-hero-overlay{position:absolute;inset:0;background:linear-gradient(120deg,rgba(var(--mp-dark-rgb),.92) 0%,rgba(var(--mp-dark-rgb),.65) 60%,rgba(var(--mp-dark-rgb),.4) 100%)}
.mp-hero-inner{position:relative;z-index:2}
.mp-hero-text{max-width:720px}
.mp-hero-h1{font-size:clamp(34px,5vw,58px);margin:0 0 14px;color:#fff;text-transform:capitalize}
.mp-hero-sub{font-size:clamp(17px,2.2vw,22px);opacity:.92;margin:0 0 28px}
.mp-hero-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.mp-center.mp-hero-actions{justify-content:center}
.mp-hero-rating{display:flex;align-items:center;gap:10px;margin-top:26px;flex-wrap:wrap}
.mp-rating-score{font-family:var(--mp-font-heading);font-weight:700;font-size:20px}
.mp-rating-count{opacity:.8;font-size:14px}
.mp-badges{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.mp-badge{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:10px 16px;backdrop-filter:blur(6px)}
.mp-badge strong{display:block;font-size:14px}
.mp-badge span{font-size:12px;opacity:.8}

/* ---- Hero split layout + 3D foreground photo (puremovers-style) ---- */
.mp-hero--split{padding-bottom:70px}
.mp-hero--split .mp-hero-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.mp-hero--split .mp-hero-text{max-width:620px}
/* perspective wrapper gives the photo its real 3D pop */
.mp-hero-figure{position:relative;z-index:2;perspective:1100px;min-height:360px;display:flex;align-items:center;justify-content:center}
/* colored blob sitting behind the cut-out, like the green shape on puremovers */
.mp-hero-blob{position:absolute;inset:6% 2% 6% 2%;z-index:1;border-radius:42% 58% 55% 45%/48% 42% 58% 52%;
	background:linear-gradient(145deg,var(--mp-primary) 0%,var(--mp-accent) 100%);
	box-shadow:0 40px 80px -30px rgba(var(--mp-primary-rgb),.65);
	transform:rotate(-4deg);animation:mp-blobfloat 9s ease-in-out infinite}
/* the cut-out photo tilts forward and floats — the "3D on the foreground" effect */
.mp-hero-photo{position:relative;z-index:2;max-width:100%;width:100%;height:auto;display:block;
	filter:drop-shadow(0 34px 42px rgba(0,0,0,.45));
	transform:rotateY(-9deg) rotateX(3deg) translateZ(40px);transform-origin:center;
	animation:mp-herofloat 6s ease-in-out infinite;will-change:transform}
@keyframes mp-herofloat{0%,100%{transform:rotateY(-9deg) rotateX(3deg) translateY(0) translateZ(40px)}50%{transform:rotateY(-9deg) rotateX(3deg) translateY(-14px) translateZ(40px)}}
@keyframes mp-blobfloat{0%,100%{transform:rotate(-4deg) scale(1)}50%{transform:rotate(-2deg) scale(1.03)}}
@media (max-width:860px){
	.mp-hero--split .mp-hero-inner{grid-template-columns:1fr;gap:24px}
	.mp-hero--split .mp-hero-text{max-width:none;order:1}
	.mp-hero-figure{order:2;min-height:0;margin-top:6px}
	.mp-hero-photo{max-width:420px;margin:0 auto;transform:rotateY(-6deg) rotateX(2deg)}
	@keyframes mp-herofloat{0%,100%{transform:rotateY(-6deg) rotateX(2deg) translateY(0)}50%{transform:rotateY(-6deg) rotateX(2deg) translateY(-10px)}}
}
@media (prefers-reduced-motion:reduce){
	.mp-hero-photo,.mp-hero-blob{animation:none}
}

/* stars */
.mp-stars{display:inline-flex;gap:1px;color:#d7dbe0}
.mp-star.is-on{color:#f5a623}

/* ---- Section head ---- */
.mp-head{margin-bottom:46px}
.mp-head-center{text-align:center}
.mp-eyebrow{display:inline-block;color:var(--mp-primary);font-family:var(--mp-font-heading);font-weight:600;font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}
.mp-h2{font-size:clamp(26px,3.4vw,40px);margin:0}

/* ---- Features ---- */
.mp-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.mp-feature{background:#fff;border:1px solid var(--mp-border);border-radius:var(--mp-radius);padding:30px;transition:transform .3s,box-shadow .3s}
.mp-feature:hover{transform:translateY(-6px);box-shadow:var(--mp-shadow)}
.mp-ic{font-size:34px;line-height:1;display:inline-block}
.mp-ic.dashicons{color:var(--mp-primary);font-size:34px;width:34px;height:34px}
.mp-feature h3{font-size:19px;margin:16px 0 8px}
.mp-feature p{margin:0;color:var(--mp-muted)}

/* ---- Client logos marquee ---- */
.mp-logos{padding:52px 0}
.mp-logos-title{text-align:center;color:var(--mp-muted);font-weight:600;margin:0 0 26px;letter-spacing:.03em}
.mp-logos-marquee{overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.mp-logos-track{display:flex;align-items:center;gap:56px;width:max-content;animation:mpMarquee 32s linear infinite}
.mp-logos-marquee:hover .mp-logos-track{animation-play-state:paused}
.mp-logos-item img{height:38px;width:auto;filter:grayscale(1);opacity:.65;transition:filter .3s,opacity .3s}
.mp-logos-item img:hover{filter:none;opacity:1}
@keyframes mpMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---- Service detail ---- */
.mp-service-hero .mp-service-ic{font-size:46px;line-height:1;margin-bottom:12px}
.mp-service-hero-cta{margin-top:24px}
.mp-service-bullets{list-style:none;padding:0;margin:22px 0}
.mp-service-bullets li{position:relative;padding:9px 0 9px 30px;color:var(--mp-text)}
.mp-service-bullets li::before{content:"✓";position:absolute;left:0;top:9px;color:var(--mp-primary);font-weight:700}
.mp-service-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}

/* ---- Videos ---- */
.mp-video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.mp-video video{width:100%;border-radius:var(--mp-radius);display:block}
.mp-video-embed{position:relative;width:100%;padding-top:56.25%;border-radius:var(--mp-radius);overflow:hidden}
.mp-video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ---- Truck ---- */
.mp-truck-inner{text-align:center}
.mp-truck-img{margin:0 auto;border-radius:var(--mp-radius)}
.mp-truck-caption{font-family:var(--mp-font-heading);font-weight:600;font-size:22px;margin-top:20px}

/* ---- Reviews ---- */
.mp-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.mp-review{margin:0;background:#fff;border:1px solid var(--mp-border);border-radius:var(--mp-radius);padding:24px;box-shadow:0 2px 10px rgba(15,17,21,.04);transition:transform .3s,box-shadow .3s}
.mp-review:hover{transform:translateY(-4px);box-shadow:var(--mp-shadow)}
.mp-review-top{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.mp-review-avatar{width:46px;height:46px;border-radius:50%;background:var(--mp-primary-light);color:var(--mp-primary);display:flex;align-items:center;justify-content:center;font-weight:700;overflow:hidden;flex:0 0 auto}
.mp-review-avatar img{width:100%;height:100%;object-fit:cover}
.mp-review blockquote{margin:0;color:var(--mp-text)}
.mp-review figcaption{margin-top:12px;color:var(--mp-muted);font-size:13px}

/* ---- Services ---- */
.mp-service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.mp-service{position:relative;display:flex;flex-direction:column;align-items:flex-start;background:#fff;border:1px solid var(--mp-border);border-radius:var(--mp-radius);padding:26px;transition:transform .3s,box-shadow .3s,border-color .3s;color:var(--mp-text)}
.mp-service:hover{transform:translateY(-6px);box-shadow:var(--mp-shadow);border-color:transparent}
.mp-service h3{font-size:17px;margin:14px 0 6px}
.mp-service p{margin:0;color:var(--mp-muted);font-size:14px}
.mp-service-badge{position:absolute;top:14px;right:14px;background:var(--mp-primary-light);color:var(--mp-primary-dark);font-size:11px;font-weight:600;padding:4px 9px;border-radius:999px}
.mp-service-more{margin-top:14px;color:var(--mp-primary);font-weight:600;font-size:14px}
.mp-service-grid[data-collapsed="1"] .mp-service-extra{display:none}
.mp-service-grid.is-expanded .mp-service-extra{display:flex;animation:mpFade .4s ease}

/* ---- About ---- */
.mp-about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}
.mp-about-text p{color:var(--mp-muted);font-size:17px;margin:16px 0 24px}
.mp-about-media img{border-radius:var(--mp-radius);box-shadow:var(--mp-shadow)}
.mp-clients{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-top:28px;opacity:.7}
.mp-clients img{max-height:34px;width:auto;filter:grayscale(1)}

/* ---- Closing ---- */
.mp-closing{position:relative;background:var(--mp-dark);color:#fff;text-align:center;overflow:hidden}
.mp-closing::before{content:"";position:absolute;inset:-12% 0;background-image:var(--mp-hero-img,none);background-size:cover;background-position:center calc(50% + var(--mp-par,0px));opacity:.35;will-change:background-position}
.mp-closing-inner{position:relative;z-index:2;max-width:760px;margin:0 auto}
.mp-closing-inner p{font-size:18px;opacity:.9;margin:14px 0 26px}

/* ---- FAQ accordion ---- */
.mp-accordion{display:grid;gap:12px}
.mp-acc-item{background:#fff;border:1px solid var(--mp-border);border-radius:var(--mp-radius);overflow:hidden}
.mp-acc-q{width:100%;text-align:left;background:none;border:0;padding:20px 24px;font-family:var(--mp-font-heading);font-weight:600;font-size:17px;color:var(--mp-dark);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px}
.mp-acc-ic{position:relative;width:16px;height:16px;flex:0 0 auto}
.mp-acc-ic::before,.mp-acc-ic::after{content:"";position:absolute;background:var(--mp-primary);transition:transform .3s}
.mp-acc-ic::before{top:7px;left:0;width:16px;height:2px}
.mp-acc-ic::after{left:7px;top:0;width:2px;height:16px}
.mp-acc-item.is-open .mp-acc-ic::after{transform:scaleY(0)}
.mp-acc-a{max-height:0;overflow:hidden;transition:max-height .35s ease}
.mp-acc-a-in{padding:0 24px 20px;color:var(--mp-muted)}
.mp-acc-a-in p{margin:0}

/* ---- Blog ---- */
.mp-blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.mp-blog-card{background:#fff;border:1px solid var(--mp-border);border-radius:var(--mp-radius);overflow:hidden;color:var(--mp-text);transition:transform .3s,box-shadow .3s}
.mp-blog-card:hover{transform:translateY(-6px);box-shadow:var(--mp-shadow)}
.mp-blog-thumb img{width:100%;height:200px;object-fit:cover}
.mp-blog-body{padding:22px}
.mp-blog-date{color:var(--mp-primary);font-size:13px;font-weight:600}
.mp-blog-body h3{font-size:19px;margin:8px 0 8px}
.mp-blog-body p{margin:0;color:var(--mp-muted);font-size:14px}

/* ---- Page hero ---- */
.mp-pagehero{background:var(--mp-dark);color:#fff;padding:80px 0;position:relative;overflow:hidden}
.mp-pagehero.mp-pagehero-img::before{content:"";position:absolute;inset:0;background-image:var(--mp-hero-img);background-size:cover;background-position:center;opacity:.45}
.mp-pagehero-inner{position:relative;z-index:2;text-align:center}
.mp-pagehero-title{font-size:clamp(30px,4vw,48px);margin:0;color:#fff}
.mp-pagehero-sub{opacity:.9;font-size:18px;margin:12px auto 0;max-width:680px}

/* ---- City page ---- */
.mp-points-list{display:grid;gap:40px}
.mp-point{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.mp-point-rev .mp-point-media{order:2}
.mp-point-media img{border-radius:var(--mp-radius);box-shadow:var(--mp-shadow)}
.mp-point-text h3{font-size:24px;margin:0 0 10px}
.mp-point-text p{color:var(--mp-muted);margin:0;font-size:17px}
.mp-areas-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px}
.mp-areas-col h4{font-size:18px;margin:0 0 14px}
.mp-areas-list{columns:2;list-style:none;margin:0;padding:0}
.mp-areas-list li{padding:6px 0;color:var(--mp-muted)}
.mp-areas-list li::before{content:"📍";margin-right:6px}

/* ---- Locations cards ---- */
.mp-city-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.mp-city-card{background:#fff;border:1px solid var(--mp-border);border-radius:var(--mp-radius);padding:24px;text-align:center;color:var(--mp-dark);transition:transform .3s,box-shadow .3s}
.mp-city-card:hover{transform:translateY(-5px);box-shadow:var(--mp-shadow)}
.mp-city-card .dashicons{color:var(--mp-primary);font-size:28px;width:28px;height:28px}
.mp-city-card strong{display:block;margin:10px 0 4px;font-size:17px}
.mp-city-more{font-size:13px;color:var(--mp-primary)}

/* ---- Rates ---- */
.mp-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch}
.mp-plan{display:flex;flex-direction:column;background:#fff;border:1px solid var(--mp-border);border-radius:var(--mp-radius);padding:32px;position:relative;transition:transform .3s,box-shadow .3s}
.mp-plan:hover{transform:translateY(-6px);box-shadow:var(--mp-shadow)}
.mp-plan-featured{border-color:var(--mp-primary);box-shadow:var(--mp-shadow)}
.mp-plan-tag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--mp-primary);color:var(--mp-primary-contrast);font-size:12px;font-weight:600;padding:6px 14px;border-radius:999px}
.mp-plan-name{font-size:20px;margin:0 0 6px}
.mp-plan-price{font-family:var(--mp-font-heading);font-weight:800;font-size:34px;color:var(--mp-primary);margin-bottom:18px}
.mp-plan-features{list-style:none;margin:0 0 22px;padding:0;flex:1}
.mp-plan-features li{padding:9px 0;border-bottom:1px solid var(--mp-border);color:var(--mp-muted)}
.mp-plan-features li::before{content:"✓";color:var(--mp-primary);font-weight:700;margin-right:8px}

/* ---- Stats ---- */
.mp-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
.mp-stat-num,.mp-stat-suffix{font-family:var(--mp-font-heading);font-weight:800;font-size:46px;color:var(--mp-primary)}
.mp-stat-label{display:block;margin-top:6px;opacity:.85}

/* ---- Contact ---- */
.mp-contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:44px;align-items:start}
.mp-contact-info p{display:flex;align-items:center;gap:10px;color:var(--mp-muted)}
.mp-contact-info .dashicons{color:var(--mp-primary)}
.mp-map{margin-top:18px}
.mp-map iframe{width:100%;border:0;border-radius:var(--mp-radius);min-height:260px}

/* ---- Forms ---- */
.mp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.mp-form label{display:block;font-size:13px;font-weight:600;color:var(--mp-dark);margin-bottom:12px}
.mp-form .mp-full,.mp-contact-form .mp-form label.mp-full{grid-column:1/-1}
.mp-form input,.mp-form select{width:100%;margin-top:6px;padding:12px 14px;border:1px solid var(--mp-border);border-radius:10px;font:inherit;font-weight:400;background:#fff;transition:border-color .2s,box-shadow .2s}
.mp-form input:focus,.mp-form select:focus{outline:0;border-color:var(--mp-primary);box-shadow:0 0 0 3px rgba(var(--mp-primary-rgb),.15)}
.mp-form .mp-btn{margin-top:8px}
.mp-form-consent{font-size:12px;color:var(--mp-muted);margin:12px 0 0}
.mp-form-msg{margin-top:12px;font-size:14px}
.mp-form-msg.is-ok{color:var(--mp-primary-dark)}
.mp-form-msg.is-err{color:#d63638}
.mp-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.mp-sr{position:relative}

/* ---- Footer ---- */
.mp-footer{background:var(--mp-dark);color:rgba(255,255,255,.8);padding:66px 0 0}
.mp-footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1.3fr;gap:34px}
.mp-footer h4{color:#fff;font-size:16px;margin:0 0 16px}
.mp-footer-about{font-size:14px;margin:16px 0}
.mp-footer .mp-logo-text{color:#fff}
.mp-footer-menu{list-style:none;margin:0;padding:0}
.mp-footer-menu a{display:block;padding:6px 0;color:rgba(255,255,255,.78);font-size:14px;transition:color .2s}
.mp-footer-menu a:hover{color:var(--mp-primary)}
.mp-footer-contact p{display:flex;gap:8px;align-items:flex-start;font-size:14px;margin:0 0 10px}
.mp-footer-contact a{color:rgba(255,255,255,.8)}
.mp-footer-contact .dashicons{color:var(--mp-primary);font-size:17px}
.mp-license{opacity:.6;font-size:12px}
.mp-socials{display:flex;gap:10px;margin-top:16px}
.mp-social{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:600;text-transform:uppercase;transition:background .2s,transform .2s}
.mp-social:hover{background:var(--mp-primary);transform:translateY(-3px);color:var(--mp-primary-contrast)}
.mp-footer-bottom{margin-top:50px;border-top:1px solid rgba(255,255,255,.12);padding:20px 0}
.mp-footer-bottom-inner{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;opacity:.75}
.mp-footer-legal a{color:inherit;margin-left:16px}

/* ---- Floating bottom bar ---- */
.mp-floatbar{position:fixed;left:0;right:0;bottom:0;z-index:700;display:none;grid-template-columns:1fr 1fr 1fr;background:#fff;box-shadow:0 -6px 24px rgba(15,17,21,.12)}
.mp-floatbar-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:11px 4px;font-size:12px;font-weight:600;color:var(--mp-dark);border:0;background:none;cursor:pointer;font-family:var(--mp-font-heading)}
.mp-floatbar-item .dashicons{font-size:20px;width:20px;height:20px}
.mp-floatbar-cta{background:var(--mp-primary);color:var(--mp-primary-contrast)}

/* ---- Modals ---- */
.mp-modal{position:fixed;inset:0;z-index:1100;display:none}
.mp-modal.is-open{display:block}
.mp-modal-overlay{position:absolute;inset:0;background:rgba(15,17,21,.6);backdrop-filter:blur(3px);animation:mpFade .25s ease}
.mp-modal-box{position:relative;z-index:2;background:#fff;max-width:600px;width:calc(100% - 32px);margin:5vh auto;max-height:90vh;overflow-y:auto;border-radius:18px;padding:34px;box-shadow:var(--mp-shadow-lg);animation:mpPop .3s cubic-bezier(.34,1.56,.64,1)}
.mp-modal-box-sm{max-width:420px}
.mp-modal-box-wide{max-width:980px}
.mp-modal-x{position:absolute;top:14px;right:16px;background:none;border:0;font-size:30px;line-height:1;color:var(--mp-muted);cursor:pointer}
.mp-modal-title{font-size:24px;margin:0 0 18px}
.mp-modal-text{margin:0 0 18px;color:var(--mp-muted)}
.mp-calc-frame{min-height:70vh}
.mp-calc-frame iframe{width:100%;height:70vh;border:0;border-radius:10px}

/* ---- Pagination ---- */
.mp-pagination{margin-top:40px;text-align:center}
.mp-pagination .page-numbers{display:inline-block;padding:9px 15px;margin:0 3px;border:1px solid var(--mp-border);border-radius:8px;color:var(--mp-dark)}
.mp-pagination .current{background:var(--mp-primary);color:var(--mp-primary-contrast);border-color:var(--mp-primary)}

/* ---- RTE ---- */
.mp-rte{font-size:17px;color:var(--mp-text)}
.mp-rte h2,.mp-rte h3{margin-top:1.6em}
.mp-rte img{border-radius:var(--mp-radius);margin:1.4em 0}
.mp-rte a{text-decoration:underline}

/* ==========================================================================
   ANIMATIONS — our own set (scroll reveal, hovers, pop). Respect reduced motion.
   ========================================================================== */
/* Reveal only hides content when JS is active (html.mp-js). Without JS — or if the
   observer never fires — everything stays fully visible, so content is never lost. */
.mp-js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0ms);will-change:opacity,transform}
.mp-js .reveal.is-visible{opacity:1;transform:none}
@keyframes mpFade{from{opacity:0}to{opacity:1}}
@keyframes mpPop{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
	.mp-js .reveal{opacity:1 !important;transform:none !important;transition:none}
	.mp-btn,.mp-feature,.mp-service,.mp-review,.mp-blog-card,.mp-plan,.mp-city-card{transition:none}
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width:1024px){
	.mp-feature-grid,.mp-review-grid,.mp-blog-grid{grid-template-columns:repeat(2,1fr)}
	.mp-service-grid,.mp-city-grid{grid-template-columns:repeat(2,1fr)}
	.mp-plan-grid,.mp-stats-grid{grid-template-columns:repeat(2,1fr)}
	.mp-footer-grid{grid-template-columns:1fr 1fr 1fr}
}
@media (max-width:900px){
	.mp-nav,.mp-nav-cta,.mp-topbar-cta .mp-topbar-badge{display:none}
	.mp-nav-phone,.mp-burger{display:flex}
	.mp-about-grid,.mp-point,.mp-point-rev .mp-point-media,.mp-contact-grid,.mp-areas-grid{grid-template-columns:1fr}
	.mp-point-rev .mp-point-media{order:0}
	.mp-floatbar{display:grid}
	body.movepro{padding-bottom:56px}
}
@media (max-width:640px){
	.mp-section{padding:56px 0}
	.mp-feature-grid,.mp-review-grid,.mp-service-grid,.mp-blog-grid,.mp-city-grid,.mp-plan-grid,.mp-stats-grid{grid-template-columns:1fr}
	.mp-form-grid{grid-template-columns:1fr}
	.mp-footer-grid{grid-template-columns:1fr 1fr}
	.mp-areas-list{columns:1}
	.mp-topbar-note{display:none}
	.mp-modal-box{padding:26px 20px;margin:3vh auto}
}
