/*
Theme Name: Vistamci
Theme URI: https://synergyeco.co.uk/
Author: Vistamci Team
Description: Custom WordPress theme replicating synergyeco.co.uk - Delivering Greener Homes for Sustainable Communities. PAS 2035 retrofit, renewable integration, and Net Zero solutions.
Version: 2.1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: synergyeco
*/

/* Tailwind utility classes are provided by the enqueued Tailwind CDN script. */

:root {
  --primary-color: #0b4f6c;
  --secondary-color: #01baef;
  --accent-color: #20bf55;
  --dark-color: #1f2937;
  --light-color: #f9fafb;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: #374151;
  background-color: #ffffff;
  overflow-x: hidden;
}

/* Custom button styles */
.btn-primary {
  background-color: #0b4f6c;
  color: #ffffff;
  padding: 0.75rem 1.75rem;
  border-radius: 9999px;
  font-weight: 600;
  transition: all 0.3s ease;
  display: inline-block;
  text-align: center;
}
.btn-primary:hover {
  background-color: #08394e;
  color: #ffffff;
}

.btn-secondary {
  background-color: #20bf55;
  color: #ffffff;
  padding: 0.75rem 1.75rem;
  border-radius: 9999px;
  font-weight: 600;
  transition: all 0.3s ease;
  display: inline-block;
  text-align: center;
}
.btn-secondary:hover {
  background-color: #1a9c45;
  color: #ffffff;
}

/* Card hover effects */
.service-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.service-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}


/* Elementor compatibility */
.elementor-page .site-main,
.elementor-page .entry-content { max-width: none; width: 100%; }
.elementor-page .entry-content { margin: 0; padding: 0; }
.custom-logo { max-height: 60px; width: auto; }

/* v1.2 motion graphics: lightweight CSS 3D eco-home hero */
.synergy-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);gap:3rem;align-items:center}
.synergy-3d-stage{position:relative;min-height:440px;perspective:1100px;transform-style:preserve-3d;isolation:isolate}
.eco-house{position:absolute;left:50%;top:52%;width:285px;height:205px;transform-style:preserve-3d;transform:translate(-50%,-50%) rotateX(-8deg) rotateY(-18deg);animation:ecoFloat 5.5s ease-in-out infinite;filter:drop-shadow(0 35px 35px rgba(0,0,0,.35))}
.house-front{position:absolute;inset:58px 22px 0 22px;border-radius:8px 8px 16px 16px;background:linear-gradient(145deg,#f8fafc,#cbd5e1);box-shadow:inset -18px -12px 30px rgba(15,23,42,.12);overflow:hidden}
.house-side{position:absolute;right:-32px;top:73px;width:56px;height:124px;background:linear-gradient(90deg,#94a3b8,#64748b);transform:skewY(-22deg);border-radius:0 8px 8px 0}
.house-roof{position:absolute;left:8px;top:5px;width:270px;height:90px;background:linear-gradient(145deg,#334155,#0f172a);clip-path:polygon(50% 0,100% 72%,92% 100%,8% 100%,0 72%);z-index:3}
.solar-panel{position:absolute;top:43px;width:58px;height:30px;border:2px solid rgba(110,231,183,.85);background:repeating-linear-gradient(90deg,#064e3b 0 12px,#065f46 12px 14px);transform:skewX(-16deg);box-shadow:0 0 20px rgba(52,211,153,.18)}
.sp1{left:56px}.sp2{left:119px}.sp3{left:182px}
.house-window{position:absolute;top:42px;width:54px;height:48px;border:5px solid #e2e8f0;border-radius:5px;background:linear-gradient(145deg,#67e8f9,#0ea5e9);box-shadow:inset 0 0 18px rgba(255,255,255,.45),0 0 18px rgba(56,189,248,.15)}
.w1{left:30px}.w2{right:30px}.house-door{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:47px;height:76px;border-radius:6px 6px 0 0;background:linear-gradient(90deg,#065f46,#047857)}
.heat-pump{position:absolute;right:-16px;bottom:12px;width:58px;height:47px;border-radius:7px;background:#e5e7eb;border:3px solid #94a3b8;transform:skewY(22deg);box-shadow:0 8px 14px rgba(0,0,0,.22)}
.heat-pump span{position:absolute;inset:7px;border:3px solid #64748b;border-radius:50%;animation:fanSpin 2.2s linear infinite}.heat-pump span:before,.heat-pump span:after{content:"";position:absolute;left:50%;top:50%;width:4px;height:20px;background:#64748b;transform:translate(-50%,-50%)}.heat-pump span:after{transform:translate(-50%,-50%) rotate(90deg)}
.energy-flow{position:absolute;left:-40px;bottom:20px;width:360px;height:115px;border:3px solid transparent;border-top-color:#34d399;border-radius:50%;transform:rotateX(70deg);filter:drop-shadow(0 0 8px #34d399);animation:energyPulse 2.6s ease-in-out infinite}
.energy-orbit{position:absolute;left:50%;top:50%;border:1px solid rgba(52,211,153,.35);border-radius:50%;transform:translate(-50%,-50%) rotateX(68deg);box-shadow:0 0 24px rgba(52,211,153,.08)}.orbit-one{width:390px;height:220px;animation:orbitPulse 4s ease-in-out infinite}.orbit-two{width:470px;height:275px;animation:orbitPulse 4s ease-in-out 1s infinite}
.eco-particle{position:absolute;width:9px;height:9px;border-radius:50%;background:#6ee7b7;box-shadow:0 0 16px #34d399;animation:particleRise 5s ease-in-out infinite}.p1{left:14%;top:70%}.p2{right:11%;top:34%;animation-delay:1.4s}.p3{left:31%;top:16%;animation-delay:2.6s}
.motion-label{position:absolute;padding:8px 12px;border:1px solid rgba(167,243,208,.25);border-radius:999px;background:rgba(6,78,59,.42);backdrop-filter:blur(9px);font-size:12px;font-weight:700;color:#d1fae5;box-shadow:0 10px 30px rgba(0,0,0,.18);animation:labelBob 4s ease-in-out infinite}.motion-label i{color:#6ee7b7;margin-right:6px}.label-solar{right:3%;top:16%}.label-heat{right:0;bottom:18%;animation-delay:1.1s}.label-save{left:3%;bottom:11%;animation-delay:2s}
.service-card{transform-style:preserve-3d;will-change:transform}
@keyframes ecoFloat{0%,100%{transform:translate(-50%,-50%) rotateX(-8deg) rotateY(-18deg) translateY(0)}50%{transform:translate(-50%,-50%) rotateX(-5deg) rotateY(-10deg) translateY(-13px)}}
@keyframes fanSpin{to{transform:rotate(360deg)}}@keyframes energyPulse{0%,100%{opacity:.3;transform:rotateX(70deg) scale(.92)}50%{opacity:1;transform:rotateX(70deg) scale(1.04)}}@keyframes orbitPulse{0%,100%{opacity:.2;scale:.96}50%{opacity:.7;scale:1.03}}@keyframes particleRise{0%,100%{opacity:.15;transform:translateY(24px) scale(.7)}50%{opacity:1;transform:translateY(-25px) scale(1.15)}}@keyframes labelBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@media(max-width:900px){.synergy-hero-grid{grid-template-columns:1fr}.synergy-3d-stage{min-height:360px}.eco-house{scale:.82}.motion-label{font-size:11px}}
@media(max-width:520px){.synergy-3d-stage{min-height:300px}.eco-house{scale:.66}.energy-orbit{display:none}.motion-label{padding:6px 9px}.label-save{left:0}.label-solar{right:0}}
@media(prefers-reduced-motion:reduce){.eco-house,.heat-pump span,.energy-flow,.energy-orbit,.eco-particle,.motion-label{animation:none!important}.service-card{transition:none!important}}

/* v1.3 hero sizing and fallback layout */
.synergy-motion-hero{padding:64px 0 58px;min-height:560px;display:flex;align-items:center}
.synergy-motion-hero .synergy-hero-copy h1{font-size:clamp(42px,4.4vw,72px);line-height:1.02;letter-spacing:-.035em}
.synergy-motion-hero .synergy-hero-copy p{max-width:720px}
.synergy-motion-hero .synergy-3d-stage{min-height:390px}
@media(max-width:900px){.synergy-motion-hero{padding:52px 0}.synergy-motion-hero .synergy-hero-copy{text-align:center;margin-inline:auto}.synergy-motion-hero .synergy-3d-stage{min-height:330px}}
@media(max-width:520px){.synergy-motion-hero{padding:42px 0 34px;min-height:auto}.synergy-motion-hero .synergy-3d-stage{min-height:275px}}


/* v1.4 photoreal motion hero */
.synergy-real-stage{position:relative;min-height:455px;perspective:1200px;display:flex;align-items:center;justify-content:center}
.real-photo-card{position:relative;width:min(100%,620px);aspect-ratio:1.25/1;border-radius:30px;overflow:hidden;transform:rotateY(-7deg) rotateX(2deg);transform-style:preserve-3d;transition:transform .18s ease-out;background-image:url('https://images.unsplash.com/photo-1508514177221-188b1cf16e9d?auto=format&fit=crop&w=1400&q=88');background-size:cover;background-position:center;box-shadow:0 35px 80px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.12) inset}
.real-photo-card:after{content:"";position:absolute;inset:0;background:linear-gradient(130deg,rgba(4,47,46,.1),rgba(2,6,23,.08) 42%,rgba(2,6,23,.68));pointer-events:none}
.real-photo-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(2,6,23,.64),transparent 48%);z-index:1}
.sun-glow{position:absolute;right:-60px;top:-70px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(253,224,71,.48),rgba(52,211,153,.09) 45%,transparent 70%);filter:blur(8px);animation:sunPulse 4s ease-in-out infinite;z-index:2}
.energy-scan{position:absolute;left:-12%;width:124%;height:2px;background:linear-gradient(90deg,transparent,#6ee7b7,#22d3ee,transparent);box-shadow:0 0 18px #34d399;z-index:4;opacity:.85;animation:scanMove 5s ease-in-out infinite}.scan-one{top:37%}.scan-two{top:64%;animation-delay:2.2s;opacity:.45}
.energy-node{position:absolute;width:12px;height:12px;border-radius:50%;background:#a7f3d0;box-shadow:0 0 0 7px rgba(52,211,153,.12),0 0 24px #34d399;z-index:5;animation:nodePulse 2.4s ease-in-out infinite}.node-one{left:22%;top:32%}.node-two{right:22%;top:48%;animation-delay:.8s}.node-three{left:45%;bottom:20%;animation-delay:1.6s}
.glass-stat{position:absolute;z-index:7;display:flex;gap:10px;align-items:center;padding:11px 14px;border-radius:16px;background:rgba(3,24,32,.72);border:1px solid rgba(167,243,208,.25);backdrop-filter:blur(14px);box-shadow:0 12px 30px rgba(0,0,0,.28);color:white;animation:statFloat 4s ease-in-out infinite}.glass-stat i{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:rgba(52,211,153,.16);color:#6ee7b7}.glass-stat span{display:flex;flex-direction:column;line-height:1.05}.glass-stat b{font-size:13px}.glass-stat small{font-size:10px;color:#a7f3d0;margin-top:4px}.stat-solar{left:18px;top:18px}.stat-pump{right:18px;bottom:18px;animation-delay:1.2s}.stat-save{left:18px;bottom:18px;animation-delay:2.1s}
.efficiency-ring{position:absolute;right:18px;top:18px;z-index:7;width:82px;height:82px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:conic-gradient(#34d399 0 92%,rgba(255,255,255,.14) 92%);box-shadow:0 12px 30px rgba(0,0,0,.25);color:white}.efficiency-ring:before{content:"";position:absolute;inset:6px;border-radius:50%;background:rgba(3,24,32,.88)}.efficiency-ring span,.efficiency-ring small{position:relative;z-index:1}.efficiency-ring span{font-weight:900;font-size:20px}.efficiency-ring small{font-size:9px;color:#a7f3d0;text-transform:uppercase;letter-spacing:.08em}
.stage-shadow{position:absolute;width:76%;height:35px;bottom:8px;border-radius:50%;background:rgba(0,0,0,.35);filter:blur(18px);z-index:-1;animation:shadowBreath 4s ease-in-out infinite}
@keyframes scanMove{0%,100%{transform:translateY(-18px);opacity:.25}50%{transform:translateY(20px);opacity:1}}@keyframes nodePulse{0%,100%{transform:scale(.75);opacity:.55}50%{transform:scale(1.2);opacity:1}}@keyframes statFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes sunPulse{0%,100%{transform:scale(.9);opacity:.6}50%{transform:scale(1.08);opacity:1}}@keyframes shadowBreath{0%,100%{transform:scaleX(.9);opacity:.35}50%{transform:scaleX(1.04);opacity:.55}}
@media(max-width:900px){.synergy-real-stage{min-height:410px}.real-photo-card{max-width:600px;transform:none}}@media(max-width:520px){.synergy-real-stage{min-height:310px}.real-photo-card{border-radius:20px}.glass-stat{padding:7px 9px}.glass-stat i{width:24px;height:24px}.glass-stat b{font-size:11px}.glass-stat small{display:none}.efficiency-ring{width:62px;height:62px}.efficiency-ring span{font-size:15px}.efficiency-ring small{font-size:7px}}
@media(prefers-reduced-motion:reduce){.sun-glow,.energy-scan,.energy-node,.glass-stat,.stage-shadow{animation:none!important}.real-photo-card{transition:none!important}}

/* v1.5 full-homepage motion system */
html{scroll-behavior:smooth}.synergy-motion-ready main section{position:relative;overflow:hidden}.motion-reveal{opacity:0;transform:translateY(34px) scale(.985);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1)}.motion-reveal.is-visible{opacity:1;transform:none}.motion-reveal.motion-delay-1{transition-delay:.08s}.motion-reveal.motion-delay-2{transition-delay:.16s}.motion-reveal.motion-delay-3{transition-delay:.24s}.motion-reveal.motion-delay-4{transition-delay:.32s}
.motion-card{transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;will-change:transform}.motion-card:hover{box-shadow:0 22px 55px rgba(15,23,42,.12);border-color:rgba(16,185,129,.35)}
.synergy-section-glow:before{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(16,185,129,.11),transparent 68%);right:-130px;top:-120px;pointer-events:none;transform:translate3d(0,var(--glow-y,0),0)}
.motion-icon{transition:transform .35s cubic-bezier(.2,.8,.2,1)}.motion-card:hover .motion-icon{transform:translateY(-4px) rotate(-3deg) scale(1.06)}
.motion-line{position:absolute;left:50%;top:0;width:1px;height:72px;background:linear-gradient(transparent,#34d399,transparent);opacity:.35;animation:linePulse 3s ease-in-out infinite}@keyframes linePulse{50%{opacity:.8;transform:scaleY(1.25)}}
.motion-project{overflow:hidden}.motion-project img{transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s ease}.motion-project:hover img{transform:scale(1.055);filter:saturate(1.08)}
.motion-testimonial{transition:transform .45s ease,opacity .45s ease}.motion-testimonial:hover{transform:translateY(-7px)}
.synergy-scroll-progress{position:fixed;left:0;top:0;height:3px;width:0;background:linear-gradient(90deg,#10b981,#22d3ee);z-index:99999;pointer-events:none;box-shadow:0 0 12px rgba(16,185,129,.5)}
.site-header,.main-navigation{transition:box-shadow .3s ease,background-color .3s ease,transform .3s ease}.synergy-scrolled .site-header,.synergy-scrolled header{box-shadow:0 10px 35px rgba(15,23,42,.09)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-reveal{opacity:1!important;transform:none!important;transition:none!important}.motion-line{animation:none}.motion-card,.motion-icon,.motion-project img,.motion-testimonial{transition:none!important}.synergy-scroll-progress{display:none}}


/* v1.6 image-rich cards */
.project-photo{position:relative;height:190px;border-radius:18px;overflow:hidden;background:#d1fae5;box-shadow:inset 0 0 0 1px rgba(15,23,42,.04)}
.project-photo img,.audience-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .45s ease}
.project-photo-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(2,44,34,.28),transparent 55%);pointer-events:none}
.project-photo:hover img,.audience-photo:hover img{transform:scale(1.075);filter:saturate(1.08) contrast(1.02)}
.audience-photo{height:150px;border-radius:16px;overflow:hidden;position:relative;background:#d1fae5}
.audience-icon{position:absolute;left:14px;bottom:14px;width:44px;height:44px;border-radius:13px;background:rgba(6,78,59,.88);backdrop-filter:blur(8px);display:grid;place-items:center;color:#a7f3d0;font-size:18px;border:1px solid rgba(167,243,208,.28);box-shadow:0 10px 24px rgba(0,0,0,.2)}
@media(max-width:640px){.project-photo{height:210px}.audience-photo{height:180px}}
@media(prefers-reduced-motion:reduce){.project-photo img,.audience-photo img{transition:none!important}}

/* v1.8 hero 3D energy motion */
.synergy-real-stage{perspective:1200px}
.real-photo-card{overflow:visible!important;isolation:isolate;animation:heroFloat 6s ease-in-out infinite}
.real-photo-card:before{content:"";position:absolute;inset:-1px;border-radius:30px;background:linear-gradient(120deg,rgba(52,211,153,.5),transparent 28%,transparent 70%,rgba(34,211,238,.35));z-index:4;pointer-events:none;opacity:.55}
.real-photo-shade{border-radius:30px;overflow:hidden;z-index:1}
.energy-scan,.energy-node,.sun-glow{z-index:5}
.glass-stat,.efficiency-ring{z-index:8;transform-style:preserve-3d;box-shadow:0 14px 38px rgba(0,0,0,.3)}
.glass-stat{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.stat-solar{transform:translateZ(55px);animation:statFloat3d 4.8s ease-in-out infinite}
.stat-pump{transform:translateZ(75px);animation:statFloat3d 5.4s ease-in-out .4s infinite}
.stat-save{transform:translateZ(45px);animation:statFloat3d 4.4s ease-in-out .8s infinite}
.efficiency-ring{transform:translateZ(85px);animation:ringHover 5s ease-in-out infinite}
.hero-orbit{position:absolute;inset:6% -8%;border:1px solid rgba(52,211,153,.28);border-radius:50%;transform:rotateX(67deg) rotateZ(-7deg);z-index:6;pointer-events:none;animation:orbitTurn 11s linear infinite}
.hero-orbit:before,.hero-orbit:after{content:"";position:absolute;width:11px;height:11px;border-radius:50%;background:#34d399;box-shadow:0 0 20px #34d399,0 0 45px rgba(52,211,153,.65)}
.hero-orbit:before{left:13%;top:12%}.hero-orbit:after{right:11%;bottom:15%;background:#22d3ee;box-shadow:0 0 20px #22d3ee,0 0 45px rgba(34,211,238,.65)}
.solar-ray{position:absolute;right:8%;top:3%;width:115px;height:115px;border-radius:50%;z-index:2;background:radial-gradient(circle,rgba(253,224,71,.45) 0,rgba(253,224,71,.12) 32%,transparent 70%);filter:blur(1px);animation:solarRay 4s ease-in-out infinite}
.energy-path{position:absolute;left:12%;right:10%;bottom:16%;height:3px;z-index:7;background:linear-gradient(90deg,transparent,#34d399,#22d3ee,transparent);filter:drop-shadow(0 0 7px #34d399);opacity:.85;transform:translateZ(35px) rotate(-3deg);background-size:220% 100%;animation:energyFlow 2.2s linear infinite}
.energy-path:before,.energy-path:after{content:"";position:absolute;top:-4px;width:10px;height:10px;border-radius:50%;background:#a7f3d0;box-shadow:0 0 16px #34d399}.energy-path:before{left:28%}.energy-path:after{right:23%}
@keyframes heroFloat{0%,100%{translate:0 0}50%{translate:0 -9px}}
@keyframes statFloat3d{0%,100%{translate:0 0}50%{translate:0 -11px}}
@keyframes ringHover{0%,100%{translate:0 0;rotate:0deg}50%{translate:0 -8px;rotate:2deg}}
@keyframes orbitTurn{to{transform:rotateX(67deg) rotateZ(353deg)}}
@keyframes solarRay{0%,100%{transform:scale(.92);opacity:.55}50%{transform:scale(1.12);opacity:1}}
@keyframes energyFlow{to{background-position:-220% 0}}
@media(max-width:900px){.hero-orbit{inset:8% -2%}.real-photo-card{overflow:hidden!important}.stat-solar,.stat-pump,.stat-save,.efficiency-ring{transform:none}}
@media(prefers-reduced-motion:reduce){.real-photo-card,.hero-orbit,.solar-ray,.energy-path,.stat-solar,.stat-pump,.stat-save,.efficiency-ring{animation:none!important}}

/* v1.9 full-screen cinematic 3D hero */
.vista-cinematic-hero{position:relative;min-height:calc(100vh - 72px);height:max(720px,calc(100vh - 72px));overflow:hidden;background:#071a19;color:#fff;isolation:isolate;display:flex;align-items:center}
.vista-hero-bg{position:absolute;inset:-4%;z-index:-5;background-image:url('assets/images/vistamci-3d-hero-reference.png');background-size:cover;background-position:center 62%;transform:scale(1.08);will-change:transform;transition:transform .18s ease-out;filter:saturate(.9) contrast(1.04)}
.vista-hero-vignette{position:absolute;inset:0;z-index:-4;background:linear-gradient(90deg,rgba(3,18,24,.96) 0%,rgba(3,22,27,.86) 34%,rgba(3,22,27,.38) 62%,rgba(3,18,24,.26) 100%),linear-gradient(0deg,rgba(2,12,18,.88) 0%,transparent 42%),radial-gradient(circle at 78% 34%,rgba(16,185,129,.14),transparent 32%)}
.vista-grid-field{position:absolute;inset:0;z-index:-3;opacity:.22;background-image:radial-gradient(rgba(52,211,153,.8) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(to right,#000 0%,transparent 76%)}
.vista-hero-inner{width:min(1500px,100%);margin:auto;padding:80px clamp(24px,5vw,88px) 110px;display:grid;grid-template-columns:minmax(0,760px) 1fr;align-items:center;gap:5vw;position:relative;z-index:5}
.vista-hero-copy{transform-style:preserve-3d}.vista-cert-pill{display:inline-flex;padding:10px 20px;border-radius:999px;border:1px solid rgba(52,211,153,.42);background:rgba(6,78,59,.42);backdrop-filter:blur(14px);color:#6ee7b7;font-weight:800;letter-spacing:.01em;box-shadow:0 10px 40px rgba(0,0,0,.18)}
.vista-hero-copy h1{font-size:clamp(3.4rem,6vw,6.7rem);line-height:.92;letter-spacing:-.055em;font-weight:950;margin:34px 0 28px;text-shadow:0 10px 45px rgba(0,0,0,.35)}.vista-hero-copy h1 span{color:#34d399;text-shadow:0 0 42px rgba(52,211,153,.18)}
.vista-hero-copy p{max-width:780px;font-size:clamp(1.08rem,1.55vw,1.42rem);line-height:1.65;color:#d6e2e6;text-shadow:0 3px 16px rgba(0,0,0,.65)}
.vista-hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.vista-primary-cta,.vista-glass-cta{padding:15px 26px;border-radius:999px;font-weight:800;text-decoration:none!important;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.vista-primary-cta{background:#22c55e;color:#fff;box-shadow:0 14px 36px rgba(34,197,94,.26)}.vista-primary-cta:hover{transform:translateY(-3px);box-shadow:0 20px 48px rgba(34,197,94,.38)}.vista-glass-cta{color:#fff;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.09);backdrop-filter:blur(12px)}.vista-glass-cta:hover{background:rgba(255,255,255,.16);transform:translateY(-3px)}
.vista-energy-hud{position:relative;height:520px;transform-style:preserve-3d;perspective:1000px}.hud-card,.hud-meter{position:absolute;background:rgba(3,31,34,.58);border:1px solid rgba(110,231,183,.32);backdrop-filter:blur(16px);box-shadow:0 18px 50px rgba(0,0,0,.3),inset 0 1px rgba(255,255,255,.08);animation:hudFloat 5s ease-in-out infinite}.hud-card{padding:14px 18px;border-radius:17px;display:flex;flex-direction:column}.hud-card b{font-size:16px}.hud-card small{color:#a7f3d0;margin-top:3px}.hud-solar{right:9%;top:7%;transform:translateZ(70px)}.hud-retrofit{left:4%;top:44%;animation-delay:1.2s;transform:translateZ(105px)}.hud-pump{right:3%;bottom:9%;animation-delay:2s;transform:translateZ(85px)}
.hud-meter{right:4%;top:30%;width:118px;height:118px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;border:8px solid rgba(52,211,153,.82);animation-delay:.7s}.hud-meter strong{font-size:29px}.hud-meter small{font-size:9px;color:#a7f3d0;letter-spacing:.08em}
.vista-energy-orbit{position:absolute;z-index:1;border:1px solid rgba(52,211,153,.35);border-radius:50%;pointer-events:none;box-shadow:0 0 35px rgba(52,211,153,.05)}.orbit-a{width:52vw;height:18vw;right:-5vw;top:31%;transform:rotate(-8deg);animation:orbitDrift 9s ease-in-out infinite}.orbit-b{width:36vw;height:12vw;right:12vw;top:43%;border-color:rgba(34,211,238,.24);transform:rotate(8deg);animation:orbitDrift 7s ease-in-out 1s infinite reverse}
.vista-energy-beam{position:absolute;z-index:2;height:2px;width:58vw;right:-8vw;background:linear-gradient(90deg,transparent,#34d399,#22d3ee,transparent);filter:drop-shadow(0 0 8px #34d399);background-size:220% 100%;animation:beamFlow 2.6s linear infinite}.beam-a{top:42%}.beam-b{top:66%;opacity:.55;animation-delay:1.1s}
.vista-particle{position:absolute;z-index:3;width:10px;height:10px;border-radius:50%;background:#6ee7b7;box-shadow:0 0 18px #34d399,0 0 40px rgba(52,211,153,.5);animation:particleFloat 5s ease-in-out infinite}.p1{right:18%;top:25%}.p2{right:31%;top:53%;animation-delay:1s}.p3{right:9%;top:70%;animation-delay:2s}.p4{right:42%;top:35%;animation-delay:3s;background:#67e8f9}
.vista-scroll-cue{position:absolute;z-index:6;bottom:26px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:7px;color:#cbd5e1}.vista-scroll-cue span{width:24px;height:38px;border:1px solid rgba(255,255,255,.4);border-radius:20px;position:relative}.vista-scroll-cue span:after{content:"";position:absolute;left:50%;top:7px;width:4px;height:7px;border-radius:4px;background:#6ee7b7;transform:translateX(-50%);animation:scrollDot 1.7s ease-in-out infinite}.vista-scroll-cue small{font-size:9px;letter-spacing:.16em}
@keyframes hudFloat{0%,100%{translate:0 0}50%{translate:0 -13px}}@keyframes orbitDrift{0%,100%{translate:0 0;scale:1}50%{translate:-18px 8px;scale:1.04}}@keyframes beamFlow{to{background-position:-220% 0}}@keyframes particleFloat{0%,100%{transform:translate3d(0,0,0);opacity:.45}50%{transform:translate3d(-18px,-25px,0) scale(1.25);opacity:1}}@keyframes scrollDot{0%{opacity:0;transform:translate(-50%,0)}50%{opacity:1}100%{opacity:0;transform:translate(-50%,15px)}}
@media(max-width:980px){.vista-cinematic-hero{height:auto;min-height:850px}.vista-hero-inner{grid-template-columns:1fr;padding-top:70px}.vista-energy-hud{height:270px}.vista-hero-copy h1{font-size:clamp(3.2rem,10vw,5.4rem)}.vista-hero-vignette{background:linear-gradient(90deg,rgba(3,18,24,.94),rgba(3,22,27,.64)),linear-gradient(0deg,rgba(2,12,18,.92),transparent 60%)}.hud-retrofit{top:42%}}
@media(max-width:640px){.vista-cinematic-hero{min-height:790px}.vista-hero-inner{padding:55px 20px 95px}.vista-hero-copy h1{font-size:clamp(2.7rem,14vw,4rem)}.vista-hero-copy p{font-size:1rem}.vista-energy-hud{height:220px}.hud-meter{width:88px;height:88px;border-width:6px}.hud-meter strong{font-size:21px}.hud-card{padding:10px 12px}.hud-card b{font-size:12px}.hud-card small{font-size:9px}.vista-energy-orbit{display:none}.vista-scroll-cue{bottom:16px}}
@media(prefers-reduced-motion:reduce){.hud-card,.hud-meter,.vista-energy-orbit,.vista-energy-beam,.vista-particle,.vista-scroll-cue span:after{animation:none!important}.vista-hero-bg{transition:none!important}}

/* v2.0 — full-site 3D motion layer */
:root{--vista-3d-green:#34d399;--vista-3d-cyan:#22d3ee;--vista-3d-ink:#071923}
.vista-3d-scene{perspective:1200px;transform-style:preserve-3d}.vista-3d-card{position:relative;transform-style:preserve-3d;will-change:transform;transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease!important}.vista-3d-card:after{content:"";position:absolute;inset:8% 8% -18px;border-radius:inherit;background:linear-gradient(135deg,rgba(52,211,153,.18),rgba(34,211,238,.08));filter:blur(22px);opacity:0;z-index:-1;transition:opacity .3s ease}.vista-3d-card:hover:after{opacity:1}.vista-3d-card>*{transform:translateZ(12px)}
.vista-depth-image{position:relative;transform-style:preserve-3d;overflow:hidden}.vista-depth-image:before{content:"";position:absolute;inset:-35%;z-index:2;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.28) 48%,transparent 61%);transform:translateX(-70%) rotate(8deg);transition:transform .8s ease;pointer-events:none}.vista-depth-image:hover:before{transform:translateX(70%) rotate(8deg)}.vista-depth-image img{transform:scale(1.025);transition:transform .7s cubic-bezier(.2,.8,.2,1)!important}.vista-depth-image:hover img{transform:scale(1.09) translateZ(20px)!important}
.vista-energy-section{isolation:isolate}.vista-energy-section>.vista-ambient-orb{position:absolute;width:260px;height:260px;border-radius:50%;pointer-events:none;z-index:-1;background:radial-gradient(circle,rgba(52,211,153,.13),rgba(34,211,238,.04) 48%,transparent 72%);filter:blur(4px);animation:vistaAmbient 8s ease-in-out infinite}.vista-energy-section>.vista-ambient-orb:nth-child(1){right:-70px;top:8%}.vista-energy-section>.vista-ambient-orb:nth-child(2){left:-100px;bottom:5%;animation-delay:-3s}
.vista-energy-section>.vista-ambient-line{position:absolute;left:-10%;top:50%;width:120%;height:1px;pointer-events:none;z-index:-1;background:linear-gradient(90deg,transparent,rgba(52,211,153,.55),rgba(34,211,238,.45),transparent);background-size:220% 100%;opacity:.35;animation:vistaLine 5s linear infinite}
.vista-float-icon{display:inline-flex;transform-style:preserve-3d;animation:vistaIconFloat 4.6s ease-in-out infinite}.vista-float-icon:nth-child(even){animation-delay:-1.7s}
.vista-3d-heading{transform-style:preserve-3d;text-shadow:0 14px 30px rgba(15,23,42,.08);transition:transform .4s ease}.vista-energy-section:hover .vista-3d-heading{transform:translateZ(16px)}
.vista-page-3d main,.vista-page-3d .site-main{perspective:1400px}.vista-page-3d article,.vista-page-3d .entry-content>div,.vista-page-3d .entry-content>section{transform-style:preserve-3d}
.vista-scroll-layer{transform:translate3d(0,var(--vista-parallax,0),0);will-change:transform}
@keyframes vistaAmbient{0%,100%{transform:translate3d(0,0,0) scale(.9);opacity:.45}50%{transform:translate3d(-24px,28px,0) scale(1.12);opacity:.9}}@keyframes vistaLine{to{background-position:-220% 0}}@keyframes vistaIconFloat{0%,100%{transform:translate3d(0,0,14px) rotate(-1deg)}50%{transform:translate3d(0,-8px,30px) rotate(2deg)}}
@media(max-width:768px){.vista-3d-card{transform:none!important}.vista-energy-section>.vista-ambient-orb{width:180px;height:180px}.vista-scroll-layer{transform:none!important}}
@media(prefers-reduced-motion:reduce){.vista-3d-card,.vista-depth-image img,.vista-float-icon,.vista-ambient-orb,.vista-ambient-line,.vista-scroll-layer{animation:none!important;transform:none!important;transition:none!important}}

/* v2.1 image-led 3D presentation */
.vista-hero-bg{background-position:center center;filter:saturate(1.05) contrast(1.05) brightness(.68);transform:scale(1.035)}
.vista-cinematic-hero:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,rgba(4,20,24,.86) 0%,rgba(4,20,24,.56) 38%,rgba(4,20,24,.12) 68%,rgba(4,20,24,.28) 100%)}
.audience-photo{box-shadow:0 18px 35px rgba(15,23,42,.16);transform:perspective(900px) rotateX(1deg);transition:transform .45s ease,box-shadow .45s ease}
.audience-photo:hover{transform:perspective(900px) rotateX(0deg) translateY(-8px) scale(1.015);box-shadow:0 28px 50px rgba(15,23,42,.24)}
.audience-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 25%,rgba(52,211,153,.20) 48%,transparent 70%);transform:translateX(-120%);transition:transform .8s ease}
.audience-photo:hover:after{transform:translateX(120%)}


/* =========================================================
   VISTA MCI v3 — professional refinement + restrained 3D motion
   ========================================================= */
:root{
 --vm-green:#159447;--vm-mint:#35d58b;--vm-ink:#0b1724;
 --vm-line:rgba(15,23,42,.09);--vm-shadow:0 18px 48px rgba(15,23,42,.10);
}
html{scroll-behavior:smooth}
body{background:#fff;color:#17202d}
.site-main section{position:relative}
.vista-cinematic-hero{min-height:720px!important;height:min(82vh,820px)!important}
.vista-hero-inner{max-width:1500px!important}
.vista-hero-copy h1{max-width:930px}
.vista-energy-hud{opacity:.96}
.hud-card{border-radius:14px!important;box-shadow:0 14px 36px rgba(0,0,0,.24)!important}
.hud-meter{box-shadow:0 14px 40px rgba(0,0,0,.28),0 0 35px rgba(52,211,153,.12)!important}

/* Professional animated energy architecture */
.vista-cinematic-hero .vista-energy-hud:before{
 content:"";position:absolute;left:7%;top:18%;width:68%;height:62%;
 border:1px solid rgba(52,211,153,.18);border-radius:48% 52% 46% 54%;
 transform:rotate(-12deg) translateZ(-20px);animation:vmOrbit 18s linear infinite;
 box-shadow:inset 0 0 60px rgba(52,211,153,.035)
}
.vista-cinematic-hero .vista-energy-hud:after{
 content:"";position:absolute;right:16%;top:30%;width:150px;height:150px;
 border-radius:50%;background:radial-gradient(circle,rgba(52,211,153,.22),rgba(34,211,238,.06) 45%,transparent 72%);
 filter:blur(2px);animation:vmPulse 5s ease-in-out infinite
}
@keyframes vmOrbit{to{transform:rotate(348deg) translateZ(-20px)}}
@keyframes vmPulse{50%{transform:scale(1.18);opacity:.62}}

/* Cleaner cards: remove toy-like excessive decoration */
.service-card,.vista-3d-card{border:1px solid var(--vm-line)!important;border-radius:18px!important;box-shadow:0 10px 30px rgba(15,23,42,.055)!important}
.service-card:hover,.vista-3d-card:hover{box-shadow:var(--vm-shadow)!important}
.vista-energy-section>.vista-ambient-orb{opacity:.45!important}
.vista-energy-section>.vista-ambient-line{opacity:.16!important}
.audience-icon{display:none!important}

/* Premium image treatment */
.audience-photo,.project-photo,.motion-project{
 border-radius:16px!important;overflow:hidden!important;
 background:#eef5f0;isolation:isolate
}
.audience-photo img,.project-photo img,.motion-project img{width:100%;height:100%;object-fit:cover}
.audience-photo:before,.project-photo:before,.motion-project:before{
 content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
 background:linear-gradient(180deg,transparent 58%,rgba(5,25,20,.18));
}
.audience-photo:hover,.project-photo:hover,.motion-project:hover{
 transform:perspective(1100px) translateY(-6px) rotateX(1deg)!important
}

/* Replace decorative icon circles with restrained line accents */
.vista-float-icon{animation:none!important}
.text-emerald-400:empty,.text-3xl.text-emerald-400:empty{display:none!important}

/* About professional panel */
.vista-professional-panel{
 position:relative;padding:38px;border-radius:20px;
 background:linear-gradient(145deg,#0b1d29,#10382f);color:#fff;
 box-shadow:0 28px 65px rgba(15,23,42,.16);overflow:hidden
}
.vista-professional-panel:after{
 content:"";position:absolute;width:260px;height:260px;right:-95px;bottom:-110px;border-radius:50%;
 border:1px solid rgba(52,211,153,.25);box-shadow:0 0 0 35px rgba(52,211,153,.035),0 0 0 70px rgba(52,211,153,.025);
 animation:vmPanelOrbit 9s ease-in-out infinite
}
.vista-panel-kicker{color:#6ee7b7;font-size:.75rem;font-weight:800;letter-spacing:.14em}
.vista-professional-panel h3{font-size:2rem;line-height:1.15;margin:12px 0 16px;max-width:520px}
.vista-professional-panel p{color:#d6e5e1;line-height:1.75;max-width:580px}
.vista-panel-points{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.vista-panel-points span{padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.11);font-size:.82rem}
@keyframes vmPanelOrbit{50%{transform:translate(-16px,-10px) scale(1.06)}}

/* Scroll reveal should feel editorial, not flashy */
.motion-reveal{transform:translateY(20px)!important;filter:none!important}
.motion-reveal.is-visible{transform:none!important}
.vista-scroll-layer{transform:none!important}

/* Header/footer refinement */
.site-header{box-shadow:0 1px 0 rgba(15,23,42,.08)!important}
.site-footer a{transition:opacity .2s ease,color .2s ease,transform .2s ease}
.site-footer a:hover{transform:translateY(-1px)}

/* Mobile: preserve performance and hierarchy */
@media(max-width:980px){
 .vista-cinematic-hero{height:auto!important;min-height:800px!important}
 .vista-energy-hud:before,.vista-energy-hud:after{opacity:.55}
}
@media(max-width:640px){
 .vista-cinematic-hero{min-height:760px!important}
 .vista-professional-panel{padding:28px}
 .vista-professional-panel h3{font-size:1.6rem}
}
@media(prefers-reduced-motion:reduce){
 .vista-cinematic-hero .vista-energy-hud:before,.vista-cinematic-hero .vista-energy-hud:after,
 .vista-professional-panel:after{animation:none!important}
}


/* =========================================================
   VISTA MCI v3.1 — premium hover + motion interaction layer
   ========================================================= */

/* Navigation underline */
.main-navigation a,
.site-header nav a{
    position:relative;
}
.main-navigation a::after,
.site-header nav a::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:-7px;
    width:0;
    height:2px;
    border-radius:99px;
    background:linear-gradient(90deg,#159447,#35d58b);
    transform:translateX(-50%);
    transition:width .28s ease;
}
.main-navigation a:hover::after,
.site-header nav a:hover::after{
    width:70%;
}

/* Buttons */
button,.button,.btn,a[class*="button"],a[class*="btn"]{
    transition:transform .22s ease,box-shadow .22s ease,filter .22s ease!important;
}
button:hover,.button:hover,.btn:hover,a[class*="button"]:hover,a[class*="btn"]:hover{
    transform:translateY(-3px);
    box-shadow:0 12px 28px rgba(21,148,71,.20);
    filter:saturate(1.05);
}

/* Service / audience / project cards */
.service-card,.vista-3d-card,
.audience-card,.project-card{
    transition:transform .35s cubic-bezier(.2,.8,.2,1),
               box-shadow .35s ease,border-color .35s ease!important;
}
.service-card:hover,.vista-3d-card:hover,
.audience-card:hover,.project-card:hover{
    border-color:rgba(21,148,71,.25)!important;
    box-shadow:0 22px 55px rgba(15,23,42,.12)!important;
}

/* Images gently zoom inside cards */
.service-card img,.vista-3d-card img,.audience-photo img,
.project-photo img,.motion-project img{
    transition:transform .65s cubic-bezier(.2,.8,.2,1),
               filter .45s ease!important;
}
.service-card:hover img,.vista-3d-card:hover img,
.audience-photo:hover img,.project-photo:hover img,
.motion-project:hover img{
    transform:scale(1.045);
    filter:saturate(1.06) contrast(1.02);
}

/* Elegant green highlight sweep */
.service-card::after,.vista-3d-card::after{
    content:"";
    position:absolute;
    inset:auto 10% 0;
    height:2px;
    border-radius:99px;
    background:linear-gradient(90deg,transparent,#35d58b,transparent);
    transform:scaleX(0);
    opacity:0;
    transition:transform .4s ease,opacity .4s ease;
}
.service-card:hover::after,.vista-3d-card:hover::after{
    transform:scaleX(1);
    opacity:.8;
}

/* Hero CTA magnetic glow */
.vista-cinematic-hero a{
    transition:transform .25s ease,box-shadow .25s ease!important;
}
.vista-cinematic-hero a:hover{
    transform:translateY(-3px) scale(1.015);
}

/* Footer links */
.site-footer a{
    position:relative;
}
.site-footer a:hover{
    color:#6ee7b7!important;
}

/* Contact/social controls */
.vista-social a,.social-links a,.top-social a{
    transition:transform .25s ease,background .25s ease,box-shadow .25s ease!important;
}
.vista-social a:hover,.social-links a:hover,.top-social a:hover{
    transform:translateY(-3px) scale(1.06);
    box-shadow:0 8px 20px rgba(0,0,0,.14);
}

/* Gentle floating visual elements */
@keyframes vmFloatSoft{
    0%,100%{transform:translate3d(0,0,0)}
    50%{transform:translate3d(0,-7px,0)}
}
.hud-card:nth-child(1){animation:vmFloatSoft 5.8s ease-in-out infinite}
.hud-card:nth-child(2){animation:vmFloatSoft 6.7s ease-in-out .6s infinite}
.hud-card:nth-child(3){animation:vmFloatSoft 6.2s ease-in-out 1.1s infinite}

/* Headings animate a subtle accent */
main section h2{
    transition:letter-spacing .3s ease,color .3s ease;
}
main section:hover > div h2,
main section:hover h2{
    letter-spacing:-.018em;
}

/* Accessibility */
@media (prefers-reduced-motion:reduce){
    *,*::before,*::after{
        animation-duration:.01ms!important;
        animation-iteration-count:1!important;
        scroll-behavior:auto!important;
        transition-duration:.01ms!important;
    }
}

/* ===== VISTA MCI v3.2 SERVICES PAGE ===== */
.vm-services-page{background:#f7faf8;color:#101827;overflow:hidden}
.vm-services-hero{min-height:680px;background:radial-gradient(circle at 80% 25%,#164b3b 0,#0e2e2b 30%,#0c1724 68%);position:relative;color:#fff;display:flex;align-items:center}
.vm-services-grid{position:absolute;inset:0;background-image:radial-gradient(rgba(60,220,145,.20) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(to right,#000,transparent 92%)}
.vm-services-hero-inner{width:min(1420px,94%);margin:auto;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:60px;position:relative;z-index:2;padding:85px 0}
.vm-kicker,.vm-eyebrow{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.12em;color:#27d78b;text-transform:uppercase}
.vm-kicker{padding:10px 15px;border:1px solid rgba(39,215,139,.35);border-radius:999px;background:rgba(14,120,83,.18)}
.vm-services-copy h1{font-size:clamp(50px,5.5vw,86px);line-height:.98;letter-spacing:-.055em;margin:25px 0}
.vm-services-copy h1 span{color:#31d58e}.vm-services-copy p{font-size:20px;line-height:1.7;color:#d2dde0;max-width:760px}
.vm-services-actions{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}
.vm-primary,.vm-secondary{display:inline-flex;align-items:center;gap:18px;padding:15px 22px;border-radius:10px;font-weight:800;text-decoration:none!important}
.vm-primary{background:linear-gradient(135deg,#159447,#35d58b);color:white!important;box-shadow:0 12px 30px rgba(34,211,139,.18)}
.vm-secondary{border:1px solid rgba(255,255,255,.32);color:#fff!important;background:rgba(255,255,255,.05)}
.vm-energy-model{height:500px;position:relative;perspective:1000px;transform-style:preserve-3d}
.vm-house{position:absolute;left:50%;top:51%;width:310px;height:215px;transform:translate(-50%,-50%) rotateY(-10deg);filter:drop-shadow(0 35px 28px rgba(0,0,0,.38));animation:vmHouseFloat 5s ease-in-out infinite}
.vm-building{position:absolute;left:30px;right:30px;bottom:0;height:150px;background:linear-gradient(145deg,#f6faf9,#9fb6b2);clip-path:polygon(0 0,100% 0,100% 100%,0 100%);border-radius:4px 4px 10px 10px}
.vm-roof{position:absolute;left:0;right:0;top:0;height:105px;background:linear-gradient(145deg,#263c46,#0b1820);clip-path:polygon(50% 0,100% 72%,90% 72%,90% 100%,10% 100%,10% 72%,0 72%);z-index:3}
.vm-panel{position:absolute;top:47px;width:54px;height:35px;background:linear-gradient(135deg,#0b5860,#1ad2a0);border:2px solid #54e6ba;transform:skewX(-18deg);opacity:.92}
.vm-panel.p1{left:80px}.vm-panel.p2{left:142px}.vm-panel.p3{left:204px}
.vm-window{position:absolute;top:30px;width:48px;height:54px;background:linear-gradient(#4ed5e8,#b8f5ff);box-shadow:0 0 18px rgba(73,225,237,.35)}.w1{left:42px}.w2{right:42px}
.vm-door{position:absolute;width:54px;height:80px;bottom:0;left:50%;transform:translateX(-50%);background:#087257}
.vm-orbit{position:absolute;left:50%;top:50%;border:1px solid rgba(48,219,148,.3);border-radius:50%;transform:translate(-50%,-50%) rotateX(68deg);animation:vmOrbit 11s linear infinite}.vm-orbit-a{width:530px;height:300px}.vm-orbit-b{width:390px;height:230px;animation-direction:reverse;animation-duration:8s}
.vm-energy-node{position:absolute;padding:13px 17px;border:1px solid rgba(72,231,173,.28);border-radius:14px;background:rgba(8,42,37,.76);backdrop-filter:blur(12px);box-shadow:0 15px 35px rgba(0,0,0,.22);display:flex;gap:10px;align-items:center;color:#dffcf0;font-weight:700;animation:vmNode 5s ease-in-out infinite}.vm-energy-node b{font-size:24px;color:#3de2a0}
.node-solar{right:3%;top:16%}.node-heat{right:0;bottom:17%;animation-delay:.8s}.node-retro{left:1%;bottom:11%;animation-delay:1.4s}
.vm-pulse{position:absolute;width:14px;height:14px;border-radius:50%;background:#4af1af;left:50%;top:50%;box-shadow:0 0 0 0 rgba(74,241,175,.5);animation:vmPulse 2s infinite}
@keyframes vmHouseFloat{50%{transform:translate(-50%,-54%) rotateY(-7deg)}}@keyframes vmOrbit{to{transform:translate(-50%,-50%) rotateX(68deg) rotateZ(360deg)}}@keyframes vmNode{50%{transform:translateY(-8px)}}@keyframes vmPulse{70%{box-shadow:0 0 0 45px rgba(74,241,175,0)}}
.vm-services-intro{text-align:center;max-width:850px;margin:0 auto;padding:100px 20px 48px}.vm-services-intro h2,.vm-process h2,.vm-audience h2,.vm-services-cta h2{font-size:clamp(36px,4vw,58px);line-height:1.05;letter-spacing:-.04em;margin:14px 0}.vm-services-intro p,.vm-audience p,.vm-services-cta p{font-size:18px;color:#5b6675;line-height:1.7}
.vm-service-cards{width:min(1420px,94%);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-bottom:110px}
.vm-service-card{position:relative;background:#fff;border:1px solid #e4ece7;border-radius:22px;padding:30px;min-height:365px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 8px 25px rgba(16,24,39,.04)}
.vm-service-top{display:flex;justify-content:space-between;align-items:center}.vm-service-no{font-size:13px;font-weight:800;color:#8c9992}.vm-service-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:16px;background:linear-gradient(145deg,#e5faef,#c6f2dc);color:#087b50;font-size:27px;box-shadow:inset 0 0 0 1px #c2ebd5}
.vm-service-card h3{font-size:25px;line-height:1.2;margin:34px 0 13px}.vm-service-card p{color:#5d6877;line-height:1.7;font-size:16px}.vm-service-meta{font-size:13px;color:#168954;font-weight:800;margin-top:auto;padding-top:22px}.vm-service-card a{margin-top:20px;padding-top:18px;border-top:1px solid #edf1ef;color:#111827;text-decoration:none;font-weight:800;display:flex;justify-content:space-between}.vm-service-card:hover a{color:#12864f}
.vm-process{background:#0f1b28;color:#fff;padding:105px max(3%,calc((100% - 1420px)/2))}.vm-process-head{max-width:760px}.vm-process-track{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:55px}.vm-step{border-top:1px solid #334253;padding:25px 15px 0 0}.vm-step i{font-style:normal;color:#31d58e;font-weight:900}.vm-step h3{font-size:23px;margin:15px 0 8px}.vm-step p{color:#aebbc6;line-height:1.6}
.vm-audience{width:min(1420px,94%);margin:auto;padding:110px 0;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.vm-audience-tags{display:flex;flex-wrap:wrap;gap:13px}.vm-audience-tags span{background:#fff;border:1px solid #dfe9e3;border-radius:999px;padding:15px 20px;font-weight:750;box-shadow:0 7px 20px rgba(16,24,39,.04);transition:.25s}.vm-audience-tags span:hover{transform:translateY(-4px);border-color:#70dca9;box-shadow:0 12px 26px rgba(21,148,71,.1)}
.vm-services-cta{width:min(1420px,94%);margin:0 auto 100px;padding:55px 60px;border-radius:26px;background:linear-gradient(120deg,#e6f8ee,#f9fcfa);border:1px solid #d7eee1;display:flex;justify-content:space-between;align-items:center;gap:40px}.vm-services-cta>div{max-width:850px}
.vm-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.vm-reveal.vm-visible{opacity:1;transform:none}
@media(max-width:900px){.vm-services-hero-inner,.vm-audience{grid-template-columns:1fr}.vm-energy-model{height:400px}.vm-service-cards{grid-template-columns:1fr 1fr}.vm-process-track{grid-template-columns:1fr 1fr}.vm-services-cta{padding:40px 28px;display:block}.vm-services-cta .vm-primary{margin-top:20px}}
@media(max-width:600px){.vm-services-hero{min-height:auto}.vm-services-hero-inner{padding:60px 0}.vm-services-copy h1{font-size:46px}.vm-energy-model{height:340px;transform:scale(.85);margin:-20px}.vm-service-cards{grid-template-columns:1fr}.vm-process-track{grid-template-columns:1fr}.vm-audience{gap:30px;padding:75px 0}}

/* VISTA MCI v3.2.2 — Elementor-compatible Services content region */
.vm-elementor-content:empty{display:none}
.vm-elementor-content{width:100%;margin:0;padding:0}
.vm-elementor-content > .elementor{width:100%}
