
@property --ang{syntax:'<angle>';initial-value:0deg;inherits:false}
:root{
  --green:#0B2219;--green-dark:#04130D;--green-mid:#123528;--accent:#84CC16;--accent-2:#B6FF3B;
  --mint:#ECFCCB;--mint-soft:#F7FEE7;--white:#fff;--text:#111827;--muted:#6B7280;--line:#E5E7EB;
  --radius:20px;--font-head:'Poppins',ui-sans-serif,system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;--font-body:'Inter',ui-sans-serif,system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;--shadow:0 10px 30px rgba(11,34,25,.10);--shadow-lg:0 24px 60px rgba(11,34,25,.20);
  --ease:cubic-bezier(.2,.8,.2,1);--ease-io:cubic-bezier(.7,0,.2,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);color:var(--text);background:var(--white);line-height:1.6;overflow-x:clip}
html{overflow-x:clip}
h1,h2,h3,h4{font-family:var(--font-head);line-height:1.2}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{font:inherit}
.container{width:min(1200px,100% - 32px);margin-inline:auto}
section{padding:96px 0}
.highlight{color:var(--accent)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;background:var(--mint);color:var(--green);font-weight:600;font-size:.8rem;padding:6px 14px;border-radius:50px;letter-spacing:.6px;text-transform:uppercase;margin-bottom:16px}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent);animation:pulseDot 1.6s infinite}
.eyebrow.light{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.22)}
@keyframes pulseDot{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.7);opacity:.35}}
.section-head{text-align:center;max-width:740px;margin:0 auto 60px}
.section-head h2{font-size:clamp(1.8rem,4vw,2.8rem);color:var(--green-dark);margin-bottom:14px}
.section-head p{color:var(--muted);font-size:1.05rem}
.bg-soft{background:var(--mint-soft)}

/* ===== Preloader / progress / wipe ===== */
#preloader{position:fixed;inset:0;background:var(--green-dark);z-index:9999;display:grid;place-items:center;transition:transform .9s var(--ease-io)}
#preloader.done{transform:translateY(-100%)}
.pl-logo{display:flex;align-items:center;gap:14px;color:#fff;font-family:var(--font-head);font-weight:800;font-size:2rem}
.pl-logo .logo-mark{animation:plSpin 1.2s var(--ease-io) infinite}
.pl-logo span{color:var(--accent-2)}
.pl-bar{width:180px;height:3px;background:rgba(255,255,255,.15);border-radius:3px;margin:22px auto 0;overflow:hidden}
.pl-bar i{display:block;height:100%;width:40%;background:var(--accent);animation:plBar 1s ease-in-out infinite}
@keyframes plSpin{50%{transform:rotate(180deg) scale(.85)}100%{transform:rotate(360deg)}}
@keyframes plBar{from{transform:translateX(-100%)}to{transform:translateX(260%)}}
#progress{position:fixed;top:0;left:0;height:3px;width:100%;transform:scaleX(0);transform-origin:0 50%;will-change:transform;background:linear-gradient(90deg,var(--green),var(--accent));z-index:300}
.wipe{position:fixed;inset:0;z-index:500;pointer-events:none;display:flex}
.wipe i{flex:1;background:var(--green);transform:scaleY(0);transform-origin:bottom}
.wipe.in i{animation:wipeIn .28s var(--ease-io) forwards}
.wipe.out i{transform:scaleY(1);transform-origin:top;animation:wipeOut .36s var(--ease-io) forwards}
.wipe i:nth-child(2){animation-delay:.03s!important}.wipe i:nth-child(3){animation-delay:.06s!important}.wipe i:nth-child(4){animation-delay:.09s!important}.wipe i:nth-child(5){animation-delay:.12s!important}
@keyframes wipeIn{to{transform:scaleY(1)}}
@keyframes wipeOut{to{transform:scaleY(0)}}

/* ===== Buttons ===== */
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-head);font-weight:600;padding:14px 28px;border-radius:50px;border:2px solid var(--green);cursor:pointer;font-size:.98rem;position:relative;overflow:hidden;z-index:1;transition:color .35s,transform .25s,box-shadow .35s,border-color .35s}
.btn-primary{background:var(--green);color:#fff}
.btn-primary::before{content:"";position:absolute;inset:0;background:var(--accent);border-radius:inherit;transform:scale(0);transition:transform .5s var(--ease);z-index:-1}
.btn-primary:hover::before{transform:scale(1.5)}
.btn-primary:hover{border-color:var(--accent);box-shadow:0 12px 28px rgba(132,204,22,.4)}
.btn-light{background:#fff;color:var(--green);border-color:#fff}
.btn-light::before{content:"";position:absolute;inset:0;background:var(--mint);transform:translateY(101%);transition:transform .4s var(--ease);z-index:-1}
.btn-light:hover::before{transform:none}
.btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.btn-ghost:hover{background:rgba(255,255,255,.1);border-color:#fff}
.btn svg{transition:transform .3s}
.btn:hover svg{transform:translateX(4px)}
/* two-line border "Learn more" */
.btn-line{display:inline-flex;align-items:center;gap:10px;padding:10px 12px 10px 22px;margin:6px;border-radius:50px;border:1.5px solid var(--green);outline:1.5px solid rgba(11,34,25,.28);outline-offset:4px;color:var(--green);font-family:var(--font-head);font-weight:600;font-size:.88rem;position:relative;overflow:hidden;z-index:1;cursor:pointer;background:transparent;transition:color .4s,outline-offset .4s var(--ease),outline-color .4s}
.btn-line::before{content:"";position:absolute;inset:0;background:var(--green);border-radius:inherit;transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease-io);z-index:-1}
.btn-line .arr{width:26px;height:26px;border-radius:50%;background:var(--mint);display:grid;place-items:center;transition:transform .45s var(--ease),background .4s,color .4s}
.btn-line:hover{color:#fff;outline-offset:7px;outline-color:var(--accent)}
.btn-line:hover::before{transform:scaleX(1);transform-origin:left}
.btn-line:hover .arr{background:var(--accent);color:#fff;transform:rotate(-45deg)}
.btn-line.light{color:#fff;border-color:#fff;outline-color:rgba(255,255,255,.35)}
.btn-line.light::before{background:#fff}
.btn-line.light .arr{background:rgba(255,255,255,.15)}
.btn-line.light:hover{color:var(--green)}

/* ===== Header ===== */
header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);transition:box-shadow .3s}
header.scrolled{box-shadow:0 6px 25px rgba(0,0,0,.07)}
.nav{display:flex;align-items:center;justify-content:space-between;height:78px;gap:20px}
.logo{display:flex;align-items:center;gap:10px;font-family:var(--font-head);font-weight:800;font-size:1.45rem;color:var(--green-dark)}
.logo-mark{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,var(--green),var(--accent));display:grid;place-items:center;color:#fff;box-shadow:0 6px 16px rgba(11,34,25,.3);transition:transform .5s var(--ease)}
.logo:hover .logo-mark{transform:rotate(-12deg) scale(1.08)}
.logo span{color:var(--accent)}
.menu{display:flex;align-items:center;gap:4px;list-style:none}
.menu>li{position:relative}
.menu>li>a{display:flex;align-items:center;gap:6px;padding:10px 15px;font-weight:500;border-radius:50px;transition:background .25s,color .25s;position:relative}
.menu>li>a::after{content:"";position:absolute;left:50%;bottom:4px;width:0;height:2px;background:var(--accent);transition:all .3s;transform:translateX(-50%)}
.menu>li>a:hover::after,.menu>li>a.active::after{width:40%}
.menu>li>a:hover,.menu>li>a.active{color:var(--green);background:var(--mint-soft)}
.chev{transition:transform .3s}
.dropdown{position:absolute;top:calc(100% + 12px);left:50%;transform:translate(-50%,12px);background:#fff;border-radius:18px;box-shadow:var(--shadow-lg);padding:10px;min-width:310px;list-style:none;opacity:0;visibility:hidden;transition:all .35s var(--ease);border:1px solid var(--line)}
.dropdown::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.dropdown li{opacity:0;transform:translateX(-10px);transition:all .3s}
.has-drop:hover .dropdown{opacity:1;visibility:visible;transform:translate(-50%,0)}
.has-drop:hover .dropdown li{opacity:1;transform:none}
.has-drop:hover .dropdown li:nth-child(2){transition-delay:.04s}.has-drop:hover .dropdown li:nth-child(3){transition-delay:.08s}.has-drop:hover .dropdown li:nth-child(4){transition-delay:.12s}.has-drop:hover .dropdown li:nth-child(5){transition-delay:.16s}.has-drop:hover .dropdown li:nth-child(6){transition-delay:.2s}.has-drop:hover .dropdown li:nth-child(7){transition-delay:.24s}
.has-drop:hover .chev{transform:rotate(180deg)}
.dropdown a{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:12px;font-size:.93rem;font-weight:500;transition:background .2s,padding .25s}
.dropdown a:hover{background:var(--mint-soft);color:var(--green);padding-left:20px}
.dropdown small{display:block;color:var(--muted);font-size:.76rem;font-weight:400;line-height:1.3}
.dropdown-icon{width:34px;height:34px;border-radius:10px;background:var(--mint);display:grid;place-items:center;color:var(--green);flex-shrink:0;transition:all .3s}
.dropdown a:hover .dropdown-icon{background:var(--green);color:#fff;transform:rotate(-8deg)}
.drop-all{border-top:1px solid var(--line);margin-top:6px;padding-top:6px}
.drop-all a{color:var(--green);font-weight:600;justify-content:center}
.nav-right{display:flex;align-items:center;gap:12px}
.icon-btn{width:46px;height:46px;border-radius:50%;border:1.5px solid var(--line);background:#fff;display:grid;place-items:center;cursor:pointer;color:var(--green);transition:all .3s}
.icon-btn:hover{background:var(--green);color:#fff;border-color:var(--green);transform:rotate(-10deg)}
.burger{display:none}
.partners{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--mint-soft);padding:12px 0;overflow:hidden}
.partner-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.p-badge{display:flex;align-items:center;gap:10px;background:#fff;border:1.5px solid var(--mint);padding:8px 16px;border-radius:12px;font-family:var(--font-head);font-weight:600;font-size:.85rem;color:var(--green-dark);position:relative;overflow:hidden;transition:border-color .3s,box-shadow .3s}
.float-on .p-badge{animation:floaty 4s ease-in-out infinite}
.p-badge:hover{border-color:var(--accent);box-shadow:0 6px 18px rgba(132,204,22,.2)}
.shine-on .p-badge::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(90deg,transparent,rgba(132,204,22,.25),transparent);transform:skewX(-20deg);animation:shine 4s infinite}
.p-badge .dot{width:26px;height:26px;border-radius:8px;background:var(--green);color:#fff;display:grid;place-items:center;font-size:.8rem}
.p-badge small{display:block;font-family:var(--font-body);font-weight:500;font-size:.68rem;color:var(--muted);line-height:1}
@keyframes floaty{0%,100%{translate:0 0}50%{translate:0 -5px}}
@keyframes shine{0%{left:-60%}40%,100%{left:130%}}

/* ===== Hero ===== */
.hero{position:relative;min-height:660px;display:flex;align-items:center;padding:110px 0 170px;color:#fff;overflow:hidden;background:var(--green-dark)}
.hero-bg,.phero-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.12);animation:heroZoom 18s ease-in-out infinite alternate}
@keyframes heroZoom{to{transform:scale(1)}}
.hero::before,.page-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(4,19,13,.96) 0%,rgba(11,34,25,.86) 50%,rgba(11,34,25,.5) 100%);z-index:1}
.grid-bg{position:absolute;inset:0;z-index:1;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:56px 56px;animation:gridMove 20s linear infinite;mask-image:radial-gradient(ellipse at 70% 40%,#000 20%,transparent 75%)}
@keyframes gridMove{to{background-position:56px 56px}}
.blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:.45;z-index:1;animation:blobMove 12s ease-in-out infinite alternate}
.blob.b1{width:380px;height:380px;background:var(--accent);top:-80px;right:10%}
.blob.b2{width:300px;height:300px;background:var(--accent-2);bottom:-60px;left:30%;animation-delay:-5s}
@keyframes blobMove{to{transform:translate(60px,40px) scale(1.2)}}
.hero-content{position:relative;z-index:2;max-width:800px}
.hero h1,.page-hero h1{font-size:clamp(2.3rem,5.6vw,4.1rem);font-weight:800;margin-bottom:22px}
.word{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:4px}
.word>b{display:inline-block;font-weight:inherit;transform:translateY(110%) rotate(6deg);animation:wordUp .9s var(--ease) forwards}
.word.grad>b{background:linear-gradient(90deg,#D9F99D,#D9F99D,#D9F99D);background-size:200%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:wordUp .9s var(--ease) forwards}
@keyframes wordUp{to{transform:none}}
@keyframes gradMove{to{background-position:200% 0}}
.fade-up{opacity:0;transform:translateY(30px);animation:fadeUp .9s var(--ease) forwards}
@keyframes fadeUp{to{opacity:1;transform:none}}
.hero p{font-size:1.15rem;color:#fff;max-width:620px;margin-bottom:34px}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap}
.hero-float{position:absolute;right:6%;bottom:22%;z-index:2;display:grid;gap:14px}
.hf-chip{background:rgba(255,255,255,.12);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:14px 18px;display:flex;gap:12px;align-items:center;animation:floaty 5s ease-in-out infinite}
.hf-chip:nth-child(2){animation-delay:-1.5s;margin-left:40px}.hf-chip:nth-child(3){animation-delay:-3s}
.hf-chip strong{font-family:var(--font-head);display:block;font-size:1.05rem}
.hf-chip small{opacity:.75;font-size:.78rem}
.hf-ico{width:40px;height:40px;border-radius:12px;background:var(--accent);display:grid;place-items:center}

/* ===== FX cards (shared animation system) ===== */
.motion-card{position:relative;border-radius:var(--radius);background:#fff;will-change:transform;transform-style:preserve-3d}
.motion-card::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:2px;background:conic-gradient(from var(--ang),transparent 0 55%,var(--accent) 75%,var(--green) 85%,transparent 95%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .4s;animation:spinAng 3.5s linear infinite;pointer-events:none;z-index:5}
.motion-card::after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(132,204,22,.13),transparent 45%);opacity:0;transition:opacity .4s;pointer-events:none;z-index:4}
.motion-card:hover::before,.motion-card:hover::after{opacity:1}
.motion-card:hover{box-shadow:var(--shadow-lg)}
@keyframes spinAng{to{--ang:360deg}}
.motion-card .shine{position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none;z-index:4}
.motion-card .shine::before{content:"";position:absolute;top:0;left:-75%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg)}
.motion-card:hover .shine::before{animation:shineOnce .9s ease}
@keyframes shineOnce{to{left:130%}}
.no-tilt .motion-card:hover{transform:translateY(-6px)}

/* Reveal */
.reveal{opacity:0;transform:translateY(60px) scale(.97);transition:opacity .9s var(--ease),transform .9s var(--ease),box-shadow .4s}
.reveal.left{transform:translateX(-70px)}
.reveal.right{transform:translateX(70px)}
.reveal.zoom{transform:scale(.85)}
.reveal.in{opacity:1;transform:none}
.motion-card.tilting{transition:transform .15s linear,box-shadow .4s,opacity .9s}

/* ===== Stats ===== */
.stats{position:relative;z-index:5;padding:60px 0}
.stats.overlap{margin-top:-100px;padding:0}
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.stats-grid.cols-1{grid-template-columns:1fr}.stats-grid.cols-2{grid-template-columns:repeat(2,1fr)}.stats-grid.cols-4{grid-template-columns:repeat(4,1fr)}
.stat{padding:30px 26px;box-shadow:var(--shadow-lg);border:1px solid var(--mint);display:flex;gap:20px;align-items:center;overflow:hidden}
.ring{width:108px;height:108px;flex-shrink:0;position:relative}
.ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.ring circle{fill:none;stroke-width:9}
.ring .bg{stroke:var(--mint)}
.ring .fg{stroke-linecap:round;stroke-dasharray:314;stroke-dashoffset:314;transition:stroke-dashoffset 2s var(--ease)}
.ring-num{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--font-head);font-weight:800;font-size:1.55rem;color:var(--green-dark)}
.stat h3{font-size:1.1rem;color:var(--green-dark);margin-bottom:4px}
.stat p{color:var(--muted);font-size:.88rem}
.stat .s-bg-ico{position:absolute;right:-14px;bottom:-14px;color:var(--mint);opacity:.6;transform:rotate(-15deg);transition:transform .6s var(--ease)}
.stat:hover .s-bg-ico{transform:rotate(0) scale(1.2);color:var(--accent);opacity:.2}

/* ===== Ribbons ===== */
.tie-wrap{position:relative;height:260px;overflow:hidden;padding:0;display:flex;align-items:center}
.ribbon{position:absolute;left:-5%;width:110%;padding:20px 0;overflow:hidden;white-space:nowrap}
.ribbon.r1{background:var(--green);transform:rotate(-4deg);z-index:2;box-shadow:0 12px 30px rgba(11,34,25,.3)}
.ribbon.r2{background:var(--mint);transform:rotate(4deg);z-index:1}
.track{display:inline-flex;animation:marquee 32s linear infinite}
.ribbon.r2 .track{animation-direction:reverse}
.track span{font-family:var(--font-head);font-weight:700;font-size:1.35rem;padding:0 22px;display:inline-flex;align-items:center;gap:44px;text-transform:uppercase;letter-spacing:.5px}
.r1 .track span{color:#fff}.r2 .track span{color:var(--green-dark)}
.star{display:inline-block;color:var(--accent);animation:starSpin 3s linear infinite;font-style:normal}
.r1 .star{color:#D9F99D}
@keyframes starSpin{to{transform:rotate(360deg)}}
@keyframes marquee{to{transform:translateX(-50%)}}
@media (hover:hover) and (pointer:fine){.ribbon:hover .track{animation-play-state:paused}}

/* ===== Offer boxes ===== */
.offer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.offer{display:grid;grid-template-columns:42% 1fr;border:1px solid var(--line);box-shadow:var(--shadow)}
.offer-img{position:relative;overflow:hidden;min-height:250px;background:linear-gradient(135deg,var(--green),var(--accent));border-radius:var(--radius) 0 0 var(--radius)}
.offer-img img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease),filter .6s}
.offer:hover .offer-img img{transform:scale(1.15) rotate(1.5deg)}
.offer-img::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(11,34,25,.55),transparent 60%)}
.offer-tag{position:absolute;left:14px;top:14px;z-index:2;background:#fff;color:var(--green);font-weight:700;font-family:var(--font-head);font-size:.8rem;padding:6px 12px;border-radius:50px;transform:translateY(-60px);transition:transform .5s var(--ease)}
.offer:hover .offer-tag{transform:none}
.offer-txt{padding:28px}
.offer-number{font-family:var(--font-head);font-weight:800;font-size:2.4rem;line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--accent);margin-bottom:10px;transition:color .4s}
.offer:hover .offer-number{color:var(--accent)}
.offer-txt h3{font-size:1.25rem;color:var(--green-dark);margin-bottom:10px}
.offer-txt p{color:var(--muted);font-size:.94rem;margin-bottom:14px}

/* ===== Case cards ===== */
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.case{box-shadow:var(--shadow);display:flex;flex-direction:column;transition:opacity .4s,transform .4s}
.case.hide{opacity:0;transform:scale(.85);pointer-events:none}
.case.gone{display:none}
.case-img{height:220px;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--green),var(--accent));border-radius:var(--radius) var(--radius) 0 0}
.case-img img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.case:hover .case-img img{transform:scale(1.12)}
.case-metric{position:absolute;bottom:14px;left:14px;background:var(--green);color:#fff;font-family:var(--font-head);font-weight:700;padding:8px 16px;border-radius:50px;font-size:.95rem;box-shadow:0 6px 18px rgba(0,0,0,.25);animation:floaty 3.5s ease-in-out infinite}
.case-body{padding:26px;display:flex;flex-direction:column;flex:1}
.tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.tag{background:var(--mint);color:var(--green);font-size:.74rem;font-weight:600;padding:4px 10px;border-radius:50px}
.case-body h3{font-size:1.16rem;color:var(--green-dark);margin-bottom:10px}
.case-body p{color:var(--muted);font-size:.92rem;margin-bottom:16px;flex:1}
.case-results{display:flex;gap:22px;padding:14px 0;border-top:1px dashed var(--line);margin-bottom:8px}
.case-results strong{display:block;font-family:var(--font-head);font-size:1.2rem;color:var(--green)}
.case-results span{font-size:.78rem;color:var(--muted)}
.center-btn{text-align:center;margin-top:50px}
.filters{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:44px}
.f-btn{padding:10px 22px;border-radius:50px;border:1.5px solid var(--line);background:#fff;cursor:pointer;font-weight:600;color:var(--muted);transition:all .3s}
.f-btn:hover{border-color:var(--green);color:var(--green)}
.f-btn.on{background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 8px 20px rgba(11,34,25,.25)}

/* ===== Problems ===== */
.prob-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.problem-card{padding:32px;border:1.5px solid var(--line);overflow:hidden}
.problem-card .fill{position:absolute;inset:0;background:linear-gradient(135deg,var(--green),var(--green-mid));clip-path:circle(0% at var(--mx,50%) var(--my,50%));transition:clip-path .7s var(--ease);border-radius:inherit}
.problem-card:hover .fill{clip-path:circle(150% at var(--mx,50%) var(--my,50%))}
.problem-card .in{position:relative;z-index:2}
.problem-card h3,.problem-card p{transition:color .4s}
.problem-card:hover h3,.problem-card:hover p{color:#fff}
.problem-icon{width:58px;height:58px;border-radius:16px;background:#FEF2F2;color:#DC2626;display:grid;place-items:center;margin-bottom:18px;transition:all .5s var(--ease)}
.problem-card:hover .problem-icon{background:rgba(255,255,255,.15);color:#D9F99D;transform:rotate(-12deg) scale(1.12)}
.problem-card h3{font-size:1.15rem;color:var(--green-dark);margin-bottom:8px}
.problem-card p{color:var(--muted);font-size:.93rem}
.problem-number{position:absolute;right:20px;top:14px;font-family:var(--font-head);font-weight:800;font-size:2.6rem;color:var(--line);z-index:2;transition:color .4s}
.problem-card:hover .problem-number{color:rgba(255,255,255,.15)}

/* ===== Service cards ===== */
.serv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.service-card{padding:34px 28px;border:1px solid var(--line);display:flex;flex-direction:column;overflow:hidden}
.service-number{position:absolute;top:16px;right:22px;font-family:var(--font-head);font-weight:800;font-size:3.4rem;color:transparent;-webkit-text-stroke:1.5px var(--mint);transition:all .5s var(--ease)}
.service-card:hover .service-number{color:var(--mint);transform:scale(1.15) rotate(-6deg)}
.service-icon{width:64px;height:64px;border-radius:18px;background:var(--green);color:#fff;display:grid;place-items:center;margin-bottom:22px;transition:transform .7s var(--ease),background .4s;position:relative}
.service-icon::after{content:"";position:absolute;inset:-6px;border-radius:22px;border:1.5px dashed var(--accent);opacity:0;transition:opacity .4s;animation:starSpin 8s linear infinite}
.service-card:hover .service-icon{transform:rotateY(360deg);background:var(--accent)}
.service-card:hover .service-icon::after{opacity:1}
.service-card h3{font-size:1.2rem;color:var(--green-dark);margin-bottom:10px}
.service-card p{color:var(--muted);font-size:.93rem;margin-bottom:16px}
.service-card ul{list-style:none;margin-bottom:18px;flex:1}
.service-card li{font-size:.88rem;padding:4px 0 4px 26px;position:relative;transition:transform .3s}
.service-card li::before{content:"✓";position:absolute;left:0;top:5px;width:18px;height:18px;border-radius:50%;background:var(--mint);color:var(--green);font-weight:700;font-size:.7rem;display:grid;place-items:center}
.service-card:hover li{transform:translateX(4px)}
.service-card:hover li:nth-child(2){transition-delay:.05s}.service-card:hover li:nth-child(3){transition-delay:.1s}

/* ===== Article ===== */
.article-box{border-radius:26px;border:1px solid var(--mint);box-shadow:var(--shadow);display:grid;grid-template-columns:330px 1fr;overflow:hidden;background:#fff}
.article-side{background:linear-gradient(160deg,var(--green-dark),var(--green));color:#fff;padding:40px 32px;display:flex;flex-direction:column;justify-content:space-between;gap:24px;position:relative;overflow:hidden}
.article-side::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;border:40px solid rgba(255,255,255,.04);right:-100px;bottom:-100px}
.article-side h3{font-size:1.5rem}
.article-side p{color:#fff;font-size:.92rem}
.toc{list-style:none;position:relative;z-index:1}
.toc li{padding:9px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:.9rem;transition:padding .3s}
.toc li:hover{padding-left:8px;color:#D9F99D}
.article-main{padding:44px 48px}
.article-main h2{font-size:clamp(1.5rem,3vw,2rem);color:var(--green-dark);margin-bottom:8px}
.meta{color:var(--muted);font-size:.85rem;margin-bottom:22px}
.article-main h3{font-size:1.15rem;color:var(--green);margin:24px 0 8px}
.article-main p{color:#374151;margin-bottom:12px}
.article-more{max-height:0;overflow:hidden;transition:max-height .9s var(--ease)}
.article-more.open{max-height:2400px}

/* ===== Builds ===== */
.builds-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;align-items:center}
.builds-left h2{font-size:clamp(1.8rem,4vw,2.7rem);color:var(--green-dark);margin-bottom:16px}
.builds-left p{color:var(--muted);margin-bottom:26px}
.builds-img{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-lg);height:270px;background:linear-gradient(135deg,var(--green),var(--accent));position:relative}
.builds-img img{width:100%;height:100%;object-fit:cover}
.builds-img .badge{position:absolute;right:16px;bottom:16px;background:#fff;border-radius:14px;padding:12px 16px;font-family:var(--font-head);font-weight:700;color:var(--green);box-shadow:var(--shadow);animation:floaty 3s ease-in-out infinite}
.build-list{display:grid;gap:18px}
.build{padding:22px 24px;box-shadow:var(--shadow);display:flex;gap:18px;align-items:flex-start}
.build-ico{width:52px;height:52px;border-radius:14px;background:var(--mint);color:var(--green);display:grid;place-items:center;flex-shrink:0;transition:all .5s var(--ease)}
.build:hover .build-ico{background:var(--green);color:#fff;transform:scale(1.1) rotate(10deg)}
.build h3{color:var(--green-dark);font-size:1.05rem;margin-bottom:4px;display:flex;justify-content:space-between}
.build h3 em{font-style:normal;color:var(--accent);font-size:.9rem}
.build p{color:var(--muted);font-size:.9rem;margin-bottom:10px}
.bar{height:8px;background:var(--mint);border-radius:10px;overflow:hidden}
.bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green),var(--accent),var(--green));background-size:200%;border-radius:10px;transition:width 2s var(--ease);animation:gradMove 2s linear infinite}

/* ===== One team ===== */
.team-layout{display:grid;grid-template-columns:1fr auto 1fr;gap:34px;align-items:center}
.team-col{display:grid;gap:20px}
.role{border:1px solid var(--line);padding:20px 22px;display:flex;gap:14px;align-items:center;box-shadow:0 4px 14px rgba(0,0,0,.04)}
.team-col.right .role{flex-direction:row-reverse;text-align:right}
.role-ico{width:50px;height:50px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;flex-shrink:0;transition:transform .6s var(--ease)}
.role:hover .role-ico{transform:rotate(360deg);background:var(--accent)}
.role h3{font-size:1rem;color:var(--green-dark)}
.role p{font-size:.84rem;color:var(--muted)}
.hub{width:300px;height:300px;position:relative;display:grid;place-items:center}
.hub-ring{position:absolute;inset:0;border:2px dashed var(--accent);border-radius:50%;animation:starSpin 25s linear infinite}
.hub-ring.r2{inset:34px;border:2px solid var(--mint);animation-duration:14s;animation-direction:reverse}
.orbit-dot{position:absolute;width:16px;height:16px;border-radius:50%;background:var(--accent);top:-8px;left:calc(50% - 8px);box-shadow:0 0 18px var(--accent)}
.hub-ring.r2 .orbit-dot{background:var(--green);top:auto;bottom:-8px;width:12px;height:12px}
.hub-core{width:170px;height:170px;border-radius:50%;background:radial-gradient(circle at 30% 30%,var(--green-mid),var(--green-dark));color:#fff;display:grid;place-items:center;text-align:center;animation:hubPulse 2.4s infinite}
.hub-core strong{font-family:var(--font-head);font-size:1.2rem;display:block}
.hub-core span{font-size:.8rem;opacity:.8}
@keyframes hubPulse{0%{box-shadow:0 0 0 0 rgba(132,204,22,.5)}70%{box-shadow:0 0 0 34px rgba(132,204,22,0)}100%{box-shadow:0 0 0 0 rgba(132,204,22,0)}}

/* ===== Cold start slider ===== */
.cold{background:var(--green-dark);color:#fff;position:relative;overflow:hidden}
.cold .section-head h2{color:#fff}
.cold .section-head p{color:#fff}
.cold .grid-bg{mask-image:radial-gradient(ellipse at 50% 30%,#000 10%,transparent 70%)}
.cold .container{position:relative;z-index:2}
.coldstart-marquee{overflow:hidden;position:relative;z-index:2;padding:10px 0 20px;cursor:grab}
.coldstart-marquee:active{cursor:grabbing}
.coldstart-track{display:flex;gap:22px;transition:transform 1s var(--ease-io);will-change:transform}
.coldstart-card{flex:0 0 min(560px,78vw);height:340px;border-radius:26px;overflow:hidden;position:relative;transform:scale(.86);opacity:.4;filter:grayscale(.6) blur(1px);transition:transform 1s var(--ease-io),opacity 1s,filter 1s;background:linear-gradient(135deg,var(--green),var(--accent));user-select:none}
.coldstart-card.active{transform:scale(1);opacity:1;filter:none}
.coldstart-card img{width:100%;height:100%;object-fit:cover;transform:scale(1.2);transition:transform 7s linear;pointer-events:none}
.coldstart-card.active img{transform:scale(1)}
.coldstart-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,19,13,.95) 0%,rgba(4,19,13,.55) 45%,transparent 75%)}
.coldstart-caption{position:absolute;left:0;right:0;bottom:0;padding:22px 24px;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:end}
.coldstart-caption>*{opacity:0;transform:translateY(30px);transition:all .8s var(--ease) .4s}
.coldstart-card.active .coldstart-caption>*{opacity:1;transform:none}
.coldstart-card.active .coldstart-caption>*:nth-child(2){transition-delay:.6s}
.coldstart-number{font-family:var(--font-head);font-weight:800;font-size:2.4rem;color:transparent;-webkit-text-stroke:1.5px #D9F99D;line-height:1}
.coldstart-caption h3{font-size:1.15rem;margin:4px 0 6px}
.coldstart-caption p,.coldstart-fix{font-size:.86rem!important}
.coldstart-fix{padding:14px!important}
.coldstart-badge{top:16px!important;left:16px!important;font-size:.7rem!important}
.coldstart-caption p{color:#fff;font-size:.95rem}
.coldstart-fix{background:rgba(255,255,255,.1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:18px}
.coldstart-fix b{display:flex;align-items:center;gap:8px;color:#D9F99D;font-family:var(--font-head);font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}
.coldstart-badge{position:absolute;top:22px;left:22px;z-index:2;background:#DC2626;color:#fff;font-family:var(--font-head);font-weight:700;font-size:.78rem;padding:6px 14px;border-radius:50px;letter-spacing:.5px}
.cs-ctrl{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:30px;position:relative;z-index:2}
.cs-arrow{width:54px;height:54px;border-radius:50%;border:1.5px solid rgba(255,255,255,.3);background:transparent;color:#fff;cursor:pointer;display:grid;place-items:center;transition:all .3s}
.cs-arrow:hover{background:var(--accent);border-color:var(--accent);transform:scale(1.1)}
.cs-dots{display:flex;gap:10px}
.cs-dot{width:46px;height:5px;border-radius:5px;background:rgba(255,255,255,.2);overflow:hidden;cursor:pointer;border:none}
.cs-dot i{display:block;height:100%;width:0;background:var(--accent)}
.cs-dot.on i{animation:dotFill var(--dot-time,5s) linear forwards}
.cs-dot.done i{width:100%}
.coldstart-marquee.paused~.cs-ctrl .cs-dot.on i{animation-play-state:paused}
@keyframes dotFill{to{width:100%}}

/* ===== Launch CTA (hit the button) ===== */
.launch{border-radius:32px;padding:70px 60px;color:#fff;position:relative;overflow:hidden;background:var(--green-dark);display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;isolation:isolate}
.launch::before{content:"";position:absolute;inset:0;background:radial-gradient(600px circle at var(--mx,70%) var(--my,50%),rgba(132,204,22,.35),transparent 50%);z-index:-1;transition:background .2s}
.launch .grid-bg{z-index:-1;mask-image:radial-gradient(ellipse at 70% 50%,#000 10%,transparent 70%)}
.launch-aurora{position:absolute;inset:-50%;z-index:-2;background:conic-gradient(from var(--ang),var(--green-dark),var(--green),var(--green-mid),var(--green-dark));animation:spinAng 12s linear infinite;filter:blur(60px);opacity:.8}
.launch h2{font-size:clamp(2rem,4.6vw,3.3rem);margin-bottom:16px}
.launch h2 .highlight{color:#D9F99D}
.launch p{color:#fff;font-size:1.08rem;margin-bottom:24px;max-width:520px}
.launch ul{list-style:none;display:flex;flex-wrap:wrap;gap:10px}
.launch li{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:50px;padding:8px 16px;font-size:.88rem;display:flex;align-items:center;gap:8px}
.launch li svg{color:#D9F99D}
.launch-right{display:grid;place-items:center;position:relative;min-height:300px}
.chip-orbit{position:absolute;inset:0;pointer-events:none}
.chip-orbit span{position:absolute;background:#fff;color:var(--green);font-family:var(--font-head);font-weight:700;font-size:.8rem;padding:8px 14px;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.25);animation:floaty 4s ease-in-out infinite}
.chip-orbit span:nth-child(1){top:4%;left:8%}
.chip-orbit span:nth-child(2){top:10%;right:2%;animation-delay:-1s}
.chip-orbit span:nth-child(3){bottom:6%;left:4%;animation-delay:-2s}
.chip-orbit span:nth-child(4){bottom:2%;right:10%;animation-delay:-3s}
.hit-btn{position:relative;display:flex;align-items:center;gap:18px;background:#fff;color:var(--green-dark);border-radius:24px;padding:18px 18px 18px 34px;font-family:var(--font-head);font-weight:800;font-size:1.35rem;overflow:hidden;z-index:1;box-shadow:0 20px 50px rgba(0,0,0,.35);transition:transform .4s var(--ease),color .4s}
.hit-btn::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--accent),#D9F99D);transform:translateX(-101%);transition:transform .6s var(--ease-io);z-index:-1}
.hit-btn:hover::before{transform:none}
.hit-btn:hover{color:var(--green-dark)}
.hit-btn small{display:block;font-family:var(--font-body);font-weight:500;font-size:.78rem;color:var(--muted);transition:color .4s}
.hit-btn:hover small{color:var(--green-dark)}
.hit-arrow{width:62px;height:62px;border-radius:18px;background:var(--green);color:#fff;display:grid;place-items:center;transition:transform .6s var(--ease),background .4s;overflow:hidden;position:relative}
.hit-arrow svg{transition:transform .5s var(--ease)}
.hit-btn:hover .hit-arrow{background:var(--green-dark);transform:rotate(-8deg) scale(1.05)}
.hit-btn:hover .hit-arrow svg{animation:arrowShoot .7s var(--ease) forwards}
@keyframes arrowShoot{0%{transform:none}45%{transform:translate(40px,-40px)}46%{transform:translate(-40px,40px)}100%{transform:none}}
.hit-wrap{position:relative}
.hit-wrap::before,.hit-wrap::after{content:"";position:absolute;inset:0;border-radius:24px;border:2px solid rgba(217,249,157,.6);animation:rectRipple 2.6s ease-out infinite;z-index:-1}
.hit-wrap::after{animation-delay:1.3s}
@keyframes rectRipple{from{transform:scale(1);opacity:.9}to{transform:scale(1.35,1.7);opacity:0}}
.hit-note{margin-top:22px;text-align:center;font-size:.85rem;color:#fff}

/* ===== FAQ ===== */
.faq-wrap{max-width:860px;margin:0 auto;display:grid;gap:14px}
.faq{border:1.5px solid var(--line);border-radius:18px;overflow:hidden;transition:border-color .3s,box-shadow .3s,background .3s;background:#fff}
.faq.open{border-color:var(--green);box-shadow:var(--shadow);background:var(--mint-soft)}
.faq-question{width:100%;background:none;border:none;padding:22px 26px;display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;font-family:var(--font-head);font-weight:600;font-size:1.02rem;color:var(--green-dark);text-align:left}
.faq-icon{width:36px;height:36px;border-radius:50%;background:var(--mint);color:var(--green);display:grid;place-items:center;flex-shrink:0;transition:transform .45s var(--ease),background .35s,color .35s;font-size:1.2rem}
.faq.open .faq-icon{transform:rotate(135deg);background:var(--green);color:#fff}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .5s var(--ease)}
.faq-answer p{padding:0 26px 22px;color:var(--muted)}

/* ===== Page hero (inner pages) ===== */
.page-hero{position:relative;padding:110px 0 120px;color:#fff;overflow:hidden;background:var(--green-dark)}
.page-hero-inner{position:relative;z-index:2;max-width:820px}
.page-hero h1{font-size:clamp(2.1rem,5vw,3.6rem)}
.page-hero p{font-size:1.1rem;color:#fff;max-width:640px;margin-bottom:30px}
.crumbs{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:.88rem;color:#fff;margin-bottom:18px}
.crumbs a:hover{color:#D9F99D}
.crumbs .sep{opacity:.5}
.page-hero-icon{position:absolute;right:8%;top:50%;transform:translateY(-50%);z-index:2;width:220px;height:220px;border-radius:50px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(10px);display:grid;place-items:center;animation:floaty 5s ease-in-out infinite}
.page-hero-icon::before{content:"";position:absolute;inset:-18px;border-radius:62px;border:2px dashed rgba(217,249,157,.4);animation:starSpin 20s linear infinite}
.page-hero-icon svg{color:#D9F99D}
.wave{position:absolute;left:0;right:0;bottom:-1px;z-index:3;line-height:0}
.wave svg{width:100%;height:60px}
.wave path{fill:#fff}

/* ===== Detail page ===== */
.ov-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}
.ov-grid h2{font-size:clamp(1.7rem,3.6vw,2.5rem);color:var(--green-dark);margin-bottom:18px}
.ov-grid p{color:#374151;margin-bottom:16px}
.ov-img{position:relative;border-radius:26px;overflow:visible}
.ov-img .frame{border-radius:26px;overflow:hidden;height:420px;background:linear-gradient(135deg,var(--green),var(--accent));box-shadow:var(--shadow-lg)}
.ov-img img{width:100%;height:100%;object-fit:cover}
.ov-img::before{content:"";position:absolute;inset:24px -24px -24px 24px;border:2px solid var(--accent);border-radius:26px;z-index:-1}
.ov-chip{position:absolute;left:-26px;bottom:40px;background:#fff;border-radius:18px;padding:16px 20px;box-shadow:var(--shadow-lg);display:flex;gap:12px;align-items:center;animation:floaty 4s ease-in-out infinite}
.ov-chip strong{font-family:var(--font-head);font-size:1.4rem;color:var(--green);display:block;line-height:1}
.ov-chip small{color:var(--muted);font-size:.8rem}
.ov-chip .hf-ico{color:#fff}
.mini-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0 28px}
.mini-list li{display:flex;gap:10px;align-items:center;font-weight:500;font-size:.93rem}
.mini-list li i{width:22px;height:22px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-style:normal;font-size:.7rem;flex-shrink:0}
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.feat{padding:30px;border:1px solid var(--line);overflow:hidden}
.feat .service-icon{width:56px;height:56px;border-radius:16px}
.feat h3{font-size:1.1rem;color:var(--green-dark);margin-bottom:8px}
.feat p{color:var(--muted);font-size:.92rem}
.deliv-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.deliv-box{background:var(--green-dark);color:#fff;border-radius:26px;padding:44px;position:relative;overflow:hidden}
.deliv-box::after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;background:var(--accent);filter:blur(90px);opacity:.35;top:-80px;right:-80px;animation:blobMove 8s ease-in-out infinite alternate}
.deliv-box h3{font-size:1.6rem;margin-bottom:22px;position:relative;z-index:1}
.deliv-list{list-style:none;display:grid;gap:12px;position:relative;z-index:1}
.deliv-list li{display:flex;gap:14px;align-items:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);padding:14px 16px;border-radius:14px;opacity:0;transform:translateX(-30px);transition:all .6s var(--ease),background .3s}
.deliv-list.in li{opacity:1;transform:none}
.deliv-list li:hover{background:rgba(255,255,255,.12)}
.deliv-list li i{width:28px;height:28px;border-radius:50%;background:var(--accent);display:grid;place-items:center;font-style:normal;flex-shrink:0;font-size:.8rem}
.deliv-side h2{font-size:clamp(1.7rem,3.5vw,2.4rem);color:var(--green-dark);margin-bottom:16px}
.deliv-side p{color:var(--muted);margin-bottom:24px}
.proc{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;position:relative}
.proc::before{content:"";position:absolute;top:36px;left:12%;right:12%;height:3px;background:var(--mint);z-index:0}
.proc::after{content:"";position:absolute;top:36px;left:12%;right:12%;height:3px;background:linear-gradient(90deg,var(--green),var(--accent));transform:scaleX(0);transform-origin:left;transition:transform 2.2s var(--ease);z-index:0}
.proc.in::after{transform:scaleX(1)}
.step{text-align:center;position:relative;z-index:1;padding:0 8px}
.step-n{width:74px;height:74px;margin:0 auto 20px;border-radius:50%;background:#fff;border:3px solid var(--mint);display:grid;place-items:center;font-family:var(--font-head);font-weight:800;font-size:1.3rem;color:var(--green);transform:scale(0);transition:transform .7s var(--ease),background .4s,color .4s,border-color .4s}
.proc.in .step-n{transform:scale(1)}
.proc.in .step:nth-child(2) .step-n{transition-delay:.5s}.proc.in .step:nth-child(3) .step-n{transition-delay:1s}.proc.in .step:nth-child(4) .step-n{transition-delay:1.5s}
.step:hover .step-n{background:var(--green);color:#fff;border-color:var(--accent)}
.step h3{color:var(--green-dark);margin-bottom:6px}
.step p{color:var(--muted);font-size:.9rem}
.rband{background:linear-gradient(120deg,var(--green-dark),var(--green));border-radius:26px;padding:50px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;color:#fff;text-align:center}
.rband strong{font-family:var(--font-head);font-size:clamp(2rem,4vw,3rem);display:block;color:#D9F99D}
.rband span{color:#fff}
.rband>div{border-right:1px solid rgba(255,255,255,.15)}
.rband>div:last-child{border:none}

/* ===== Industries ===== */
.ind-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.ind-card{overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}
.ind-card .case-img{height:250px}
.ind-logo{position:absolute;top:18px;left:18px;z-index:2;width:58px;height:58px;border-radius:16px;background:#fff;color:var(--green);display:grid;place-items:center;font-family:var(--font-head);font-weight:800;font-size:1.3rem;box-shadow:var(--shadow);transition:transform .6s var(--ease)}
.ind-card:hover .ind-logo{transform:rotate(-12deg) scale(1.1)}
.ind-count{position:absolute;right:18px;top:18px;z-index:2;background:rgba(4,19,13,.75);color:#fff;font-size:.8rem;font-weight:600;padding:6px 12px;border-radius:50px;backdrop-filter:blur(6px)}
.float-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.float-box{padding:32px 28px;border:1px solid var(--line);box-shadow:var(--shadow);display:flex;flex-direction:column}
.float-box.floating{animation:floatBox 6s ease-in-out infinite}
.float-box:nth-child(3n+2){animation-delay:-2s}.float-box:nth-child(3n+3){animation-delay:-4s}
@keyframes floatBox{0%,100%{translate:0 0}50%{translate:0 -14px}}
.float-box:hover{animation-play-state:paused}
.float-box h3{font-size:1.15rem;color:var(--green-dark);margin-bottom:8px}
.float-box p{color:var(--muted);font-size:.92rem;margin-bottom:16px;flex:1}
.float-box .service-icon{width:58px;height:58px}
.plat-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.plat{padding:26px;border:1px solid var(--line);display:flex;gap:16px;align-items:center;box-shadow:var(--shadow)}
.plat .ind-logo{position:static;flex-shrink:0;background:var(--green);color:#fff}
.plat h3{color:var(--green-dark)}
.plat p{color:var(--muted);font-size:.86rem}

/* ===== About ===== */
.mv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tl{position:relative;max-width:820px;margin:0 auto}
.tl::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:3px;background:var(--mint);transform:translateX(-50%)}
.tl-item{display:grid;grid-template-columns:1fr 60px 1fr;align-items:center;margin-bottom:34px}
.tl-dot{width:22px;height:22px;border-radius:50%;background:var(--accent);border:5px solid #fff;box-shadow:0 0 0 3px var(--accent);margin:0 auto;position:relative;z-index:1;animation:hubPulse 2.4s infinite}
.tl-card{padding:22px 24px;border:1px solid var(--line);box-shadow:var(--shadow)}
.tl-card b{font-family:var(--font-head);color:var(--accent);font-size:.9rem}
.tl-card h3{color:var(--green-dark);margin:4px 0}
.tl-card p{color:var(--muted);font-size:.9rem}
.tl-item:nth-child(even) .tl-card{grid-column:3}
.tl-item:nth-child(even) .tl-dot{grid-column:2;grid-row:1}
.tl-item:nth-child(odd) .tl-card{grid-column:1;text-align:right}
.tl-item:nth-child(odd) .tl-dot{grid-column:2}
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.member{padding:30px 22px;text-align:center;border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}
.avatar{width:96px;height:96px;border-radius:50%;margin:0 auto 16px;background:linear-gradient(135deg,var(--green),var(--accent));display:grid;place-items:center;color:#fff;font-family:var(--font-head);font-weight:800;font-size:1.6rem;position:relative;transition:transform .6s var(--ease)}
.avatar::after{content:"";position:absolute;inset:-7px;border-radius:50%;border:2px dashed var(--accent);animation:starSpin 10s linear infinite;opacity:0;transition:opacity .4s}
.member:hover .avatar{transform:scale(1.08)}
.member:hover .avatar::after{opacity:1}
.member h3{color:var(--green-dark)}
.member p{color:var(--muted);font-size:.88rem}

/* ===== Blogs ===== */
.blog-feat{display:grid;grid-template-columns:1.2fr 1fr;overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--line);margin-bottom:50px}
.blog-feat .case-img{height:100%;min-height:360px;border-radius:var(--radius) 0 0 var(--radius)}
.blog-feat .case-body{padding:44px;justify-content:center}
.blog-feat h2{font-size:clamp(1.5rem,3vw,2.1rem);color:var(--green-dark);margin-bottom:14px}
.post-body{max-width:780px;margin:0 auto}
.post-body h2{color:var(--green-dark);font-size:1.6rem;margin:34px 0 12px}
.post-body p{color:#374151;font-size:1.05rem;margin-bottom:16px}
.post-cover{border-radius:26px;overflow:hidden;height:420px;margin:-80px auto 50px;max-width:1000px;position:relative;z-index:4;box-shadow:var(--shadow-lg);background:linear-gradient(135deg,var(--green),var(--accent))}
.post-cover img{width:100%;height:100%;object-fit:cover}
.quote{border-left:4px solid var(--accent);background:var(--mint-soft);padding:24px 28px;border-radius:0 18px 18px 0;font-size:1.15rem;font-family:var(--font-head);color:var(--green-dark);margin:30px 0}

/* ===== Get started form ===== */
.start-grid{display:grid;grid-template-columns:360px 1fr;gap:40px;align-items:start}
.start-side{background:var(--green-dark);color:#fff;border-radius:26px;padding:36px 30px;position:sticky;top:150px;overflow:hidden}
.start-side::after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;background:var(--accent);filter:blur(90px);opacity:.3;bottom:-80px;right:-80px}
.start-side h3,.start-side .side-h{font-size:1.45rem;margin-bottom:8px}
.start-side>p{color:#fff;font-size:.92rem;margin-bottom:26px}
.steps-nav{list-style:none;display:grid;gap:4px;position:relative;z-index:1;margin-bottom:28px}
.steps-nav li{display:flex;gap:14px;align-items:center;padding:9px 10px;border-radius:12px;color:#fff;font-size:.93rem;transition:all .35s}
.steps-nav li i{width:30px;height:30px;border-radius:50%;border:1.5px solid rgba(255,255,255,.3);display:grid;place-items:center;font-style:normal;font-size:.8rem;font-weight:700;transition:all .35s;flex-shrink:0}
.steps-nav li.cur{background:rgba(255,255,255,.08);color:#fff}
.steps-nav li.cur i{background:#fff;color:var(--green);border-color:#fff;box-shadow:0 0 0 5px rgba(255,255,255,.12)}
.steps-nav li.ok{color:#D9F99D}
.steps-nav li.ok i{background:var(--accent);border-color:var(--accent);color:#fff}
.contact-mini{position:relative;z-index:1;display:grid;gap:10px;border-top:1px solid rgba(255,255,255,.12);padding-top:20px;font-size:.9rem}
.contact-mini div{display:flex;gap:10px;align-items:center}
.contact-mini svg{color:#D9F99D;flex-shrink:0}
.form-card{background:#fff;border-radius:26px;border:1px solid var(--line);box-shadow:var(--shadow-lg);padding:44px;position:relative;overflow:hidden;min-height:560px}
.f-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:.88rem;color:var(--muted);font-weight:500}
.f-top b{color:var(--green)}
.f-prog{height:8px;background:var(--mint);border-radius:8px;overflow:hidden;margin-bottom:38px}
.f-prog i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green),var(--accent));border-radius:8px;transition:width .7s var(--ease);position:relative}
.f-prog i::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);animation:progShine 1.6s linear infinite}
@keyframes progShine{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
.q-step{display:none}
.q-step.on{display:block;animation:stepIn .6s var(--ease)}
.q-step.back{animation:stepBack .6s var(--ease)}
@keyframes stepIn{from{opacity:0;transform:translateX(50px)}to{opacity:1;transform:none}}
@keyframes stepBack{from{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:none}}
.q-title{font-size:clamp(1.3rem,2.6vw,1.75rem);color:var(--green-dark);margin-bottom:8px}
.q-title em{color:#DC2626;font-style:normal}
.q-sub{color:var(--muted);margin-bottom:26px}
.field{margin-bottom:20px}
.field label{display:block;font-weight:600;font-size:.92rem;margin-bottom:8px;color:var(--text)}
.field label em{color:#DC2626;font-style:normal}
.field input,.field textarea{width:100%;padding:16px 18px;border:1.5px solid var(--line);border-radius:14px;font:inherit;font-size:1rem;transition:border-color .3s,box-shadow .3s;background:#fff;resize:vertical}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px rgba(132,204,22,.15)}
.field.err input,.field.err textarea{border-color:#DC2626}
.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.opts{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.opts.three{grid-template-columns:repeat(3,1fr)}
.opts.one{grid-template-columns:1fr}
.opt{position:relative;cursor:pointer}
.opt input{position:absolute;opacity:0;pointer-events:none}
.opt-box{display:flex;align-items:center;gap:14px;padding:18px 18px;border:1.5px solid var(--line);border-radius:16px;transition:all .3s var(--ease);background:#fff;height:100%}
.opt-box:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:var(--shadow)}
.opt-ico{width:44px;height:44px;border-radius:12px;background:var(--mint);color:var(--green);display:grid;place-items:center;flex-shrink:0;transition:all .3s;font-size:1.1rem}
.opt-txt{flex:1;font-weight:600;font-size:.95rem;line-height:1.35}
.opt-txt small{display:block;font-weight:400;color:var(--muted);font-size:.8rem;margin-top:2px}
.opt-check{width:24px;height:24px;border-radius:50%;border:2px solid var(--line);display:grid;place-items:center;flex-shrink:0;transition:all .3s;color:transparent;font-size:.75rem}
.opt input:checked+.opt-box{border-color:var(--green);background:var(--mint-soft);box-shadow:0 0 0 4px rgba(132,204,22,.12)}
.opt input:checked+.opt-box .opt-ico{background:var(--green);color:#fff;transform:rotate(-8deg)}
.opt input:checked+.opt-box .opt-check{background:var(--green);border-color:var(--green);color:#fff;animation:pop .4s var(--ease)}
.opt input:focus-visible+.opt-box{outline:2px solid var(--accent);outline-offset:2px}
@keyframes pop{50%{transform:scale(1.3)}}
.cond{max-height:0;overflow:hidden;transition:max-height .6s var(--ease),margin .4s}
.cond.show{max-height:600px;margin-top:22px}
.q-label{font-weight:600;margin-bottom:12px;display:block}
.f-nav{display:flex;justify-content:space-between;align-items:center;margin-top:34px;gap:12px}
.f-back{background:none;border:none;color:var(--muted);font-weight:600;cursor:pointer;display:flex;gap:8px;align-items:center;padding:10px;visibility:hidden}
.f-back.show{visibility:visible}
.f-back:hover{color:var(--green)}
.f-err{color:#DC2626;font-size:.88rem;font-weight:500;margin-top:14px;min-height:20px}
.shake{animation:shake .45s}
@keyframes shake{20%,60%{transform:translateX(-8px)}40%,80%{transform:translateX(8px)}}
.hint{font-size:.82rem;color:var(--muted);margin-top:12px}
.success{display:none;text-align:center;padding:20px 0}
.success.on{display:block;animation:stepIn .7s var(--ease)}
.s-check{width:110px;height:110px;margin:0 auto 26px;border-radius:50%;background:var(--green);display:grid;place-items:center;animation:hubPulse 2s infinite}
.s-check svg path{stroke-dasharray:50;stroke-dashoffset:50;animation:draw .8s .3s var(--ease) forwards}
@keyframes draw{to{stroke-dashoffset:0}}
.success h2{color:var(--green-dark);font-size:2rem;margin-bottom:10px}
.success>p{color:var(--muted);max-width:480px;margin:0 auto 26px}
.summary{text-align:left;background:var(--mint-soft);border-radius:18px;padding:22px 26px;max-width:520px;margin:0 auto 26px;display:grid;gap:8px;font-size:.92rem}
.summary div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px dashed var(--mint);padding-bottom:8px}
.summary div:last-child{border:none}
.summary span{color:var(--muted)}
.summary b{text-align:right;color:var(--green-dark)}
.confetti{position:absolute;width:10px;height:14px;top:-20px;z-index:10;animation:fall linear forwards;pointer-events:none}
@keyframes fall{to{transform:translateY(700px) rotate(720deg);opacity:0}}

/* ===== Footer ===== */
footer{background:var(--green-dark);color:#fff;padding:80px 0 0;position:relative;overflow:hidden}
footer::before{content:"HOT START";position:absolute;bottom:40px;left:50%;transform:translateX(-50%);font-family:var(--font-head);font-weight:800;font-size:clamp(4rem,16vw,14rem);color:rgba(255,255,255,.03);white-space:nowrap;pointer-events:none}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.3fr;gap:36px;padding-bottom:50px;position:relative}
footer .logo{color:#fff;margin-bottom:18px}
footer h4,footer .footer-heading{color:#fff;font-size:1.02rem;margin-bottom:18px}
footer ul{list-style:none}
footer li{padding:5px 0;font-size:.92rem}
footer li a{transition:all .25s;display:inline-block}
footer li a:hover{color:#D9F99D;transform:translateX(4px)}
.socials{display:flex;gap:10px;margin-top:20px}
.socials a{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.08);display:grid;place-items:center;color:#fff;transition:all .3s}
.socials a:hover{background:var(--accent);transform:translateY(-4px) rotate(8deg)}
.news{display:flex;background:rgba(255,255,255,.08);border-radius:50px;padding:5px;margin-top:12px}
.news input{flex:1;min-width:0;background:none;border:none;outline:none;color:#fff;padding:10px 16px;font-family:var(--font-body)}
.news input::placeholder{color:#fff}
.news button{background:#D9F99D;border:none;color:#04291F;font-weight:600;padding:10px 18px;border-radius:50px;cursor:pointer;font-family:var(--font-head)}
.foot-bottom{border-top:1px solid rgba(255,255,255,.1);padding:22px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.86rem;position:relative}
.to-top{position:fixed;right:22px;bottom:22px;width:50px;height:50px;border-radius:50%;background:var(--green);color:#fff;border:none;cursor:pointer;display:grid;place-items:center;z-index:90;box-shadow:var(--shadow-lg);transform:translateY(100px);transition:transform .4s var(--ease),background .3s}
.to-top.show{transform:none}
.to-top:hover{background:var(--accent)}

/* Search */
.search-ov{position:fixed;inset:0;background:rgba(4,19,13,.85);backdrop-filter:blur(8px);z-index:600;display:flex;align-items:flex-start;justify-content:center;padding-top:14vh;opacity:0;visibility:hidden;transition:all .3s}
.search-ov.open{opacity:1;visibility:visible}
.search-box{width:min(640px,100% - 32px);background:#fff;border-radius:22px;padding:10px;transform:translateY(-30px) scale(.96);transition:transform .45s var(--ease)}
.search-ov.open .search-box{transform:none}
.search-box input{width:100%;border:none;outline:none;font-size:1.15rem;padding:16px 18px;font-family:var(--font-body);border-bottom:1px solid var(--line)}
.search-res{list-style:none;max-height:340px;overflow:auto;padding:8px}
.search-res a{display:flex;justify-content:space-between;padding:12px 14px;border-radius:10px;font-weight:500}
.search-res a small{color:var(--muted);font-weight:400}
.search-res a:hover{background:var(--mint-soft);color:var(--green)}
.search-close{position:absolute;top:24px;right:24px;width:48px;height:48px;border-radius:50%;background:#fff;border:none;cursor:pointer;color:var(--green);font-size:1.3rem}

/* ===== Responsive ===== */
@media (max-width:1100px){
  .menu{position:fixed;top:78px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;padding:16px;gap:4px;box-shadow:0 20px 40px rgba(0,0,0,.1);transform:translateY(-130%);transition:transform .45s var(--ease);max-height:calc(100vh - 78px);overflow:auto}
  .menu.open{transform:none}
  .menu>li>a{justify-content:space-between;border-radius:12px}
  .dropdown{position:static;transform:none;opacity:1;visibility:visible;box-shadow:none;border:none;max-height:0;overflow:hidden;padding:0 0 0 10px;transition:max-height .4s;min-width:0}
  .dropdown li{opacity:1;transform:none}
  .has-drop.open .dropdown{max-height:800px}
  .has-drop:hover .dropdown{transform:none}
  .has-drop.open .chev{transform:rotate(180deg)}
  .burger{display:grid}
  .nav-right .btn{display:none}
  .hero-float,.page-hero-icon{display:none}
  .offer-grid,.case-grid,.prob-grid,.serv-grid,.feat-grid,.float-grid,.ind-grid,.mv-grid,.plat-strip{grid-template-columns:1fr 1fr}
  .team-grid{grid-template-columns:1fr 1fr}
  .builds-grid,.ov-grid,.deliv-grid,.launch,.blog-feat,.start-grid{grid-template-columns:1fr}
  .start-side{position:static}
  .team-layout{grid-template-columns:1fr}
  .hub{margin:0 auto;order:-1}
  .team-col.right .role{flex-direction:row;text-align:left}
  .article-box{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .stats-grid{grid-template-columns:1fr}
  .blog-feat .case-img{border-radius:var(--radius) var(--radius) 0 0;min-height:260px}
}
@media (max-width:680px){
  section{padding:66px 0}
  .offer-grid,.case-grid,.prob-grid,.serv-grid,.feat-grid,.float-grid,.ind-grid,.mv-grid,.plat-strip,.team-grid,.foot-grid,.opts,.opts.three,.two,.mini-list{grid-template-columns:1fr}
  .offer{grid-template-columns:1fr}
  .offer-img{min-height:210px;border-radius:var(--radius) var(--radius) 0 0}
  .hero{padding:80px 0 150px;min-height:auto}
  .article-main{padding:30px 22px}
  .track span{font-size:1.05rem}
  .tie-wrap{height:200px}
  .hub{width:240px;height:240px}
  .hub-core{width:140px;height:140px}
  .launch{padding:44px 24px}
  .hit-btn{font-size:1.1rem;padding:14px 14px 14px 24px}
  .hit-arrow{width:52px;height:52px}
  .logo{font-size:1.2rem}
  .coldstart-card{height:420px}
  .coldstart-caption{grid-template-columns:1fr;padding:22px}
  .coldstart-number{font-size:2.4rem}
  .proc{grid-template-columns:1fr 1fr}
  .proc::before,.proc::after{display:none}
  .rband{grid-template-columns:1fr;padding:34px}
  .rband>div{border:none}
  .tl::before{left:20px}
  .tl-item{grid-template-columns:40px 1fr}
  .tl-item .tl-dot,.tl-item:nth-child(even) .tl-dot{grid-column:1;grid-row:1}
  .tl-item .tl-card,.tl-item:nth-child(even) .tl-card,.tl-item:nth-child(odd) .tl-card{grid-column:2;text-align:left}
  .form-card{padding:28px 20px}
  .ov-img::before{display:none}
  .ov-chip{left:10px}
  .post-cover{height:260px;margin-top:-60px}
  .stat{flex-direction:column;text-align:center}
  .partners .container{width:100%}
  .partner-row{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding:4px 16px;scrollbar-width:none}
  .partner-row::-webkit-scrollbar{display:none}
  .p-badge{flex-shrink:0}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* ===== CMS additions ===== */
.skip{position:absolute;left:-9999px;top:8px;z-index:1000;background:var(--green);color:#fff;padding:10px 16px;border-radius:10px}
.skip:focus{left:12px}
.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;opacity:0}
.grow{flex:1}
.mt{margin-top:22px}
.pt-small{padding-top:30px}
.pt-mid{padding-top:60px}
.pt-0{padding-top:0}
.bg-dark{background:var(--green-dark);color:#fff}
.bg-dark .section-head h2,.bg-dark h2,.bg-dark h3{color:#fff}
.bg-dark .section-head p,.bg-dark p{color:#fff}
.bg-dark .eyebrow{background:rgba(255,255,255,.12);color:#fff}
.narrow{max-width:820px}
.rt-title{font-size:clamp(1.7rem,3.6vw,2.4rem);color:var(--green-dark);margin-bottom:14px}
.bg-dark .rt-title{color:#fff}
.prose p{color:#374151;margin-bottom:14px;font-size:1.03rem}
.prose h2{color:var(--green-dark);font-size:1.6rem;margin:30px 0 12px}
.prose h3{color:var(--green);font-size:1.2rem;margin:24px 0 8px}
.prose h4{color:var(--green-dark);margin:18px 0 6px}
.prose ul,.prose ol{margin:0 0 16px 22px;color:#374151}
.prose li{margin-bottom:6px}
.prose a{color:var(--green);text-decoration:underline;text-underline-offset:3px}
.prose blockquote{border-left:4px solid var(--accent);background:var(--mint-soft);padding:20px 24px;border-radius:0 16px 16px 0;font-family:var(--font-head);color:var(--green-dark);margin:24px 0;font-size:1.1rem}
.prose img{border-radius:16px;margin:16px 0}
.bg-dark .prose p,.bg-dark .prose li{color:#fff}
.ov-grid .prose p{color:#374151;margin-bottom:16px}
.ov-grid.rev>div:first-child{order:2}
.partners-sec{padding:0}
.partners-sec .partners{border-top:none}
.stat h3{font-size:1.1rem;color:var(--green-dark);margin-bottom:4px}
.role h3{font-size:1rem;color:var(--green-dark)}
.build h3{color:var(--green-dark);font-size:1.05rem;margin-bottom:4px;display:flex;justify-content:space-between}
.step h3{color:var(--green-dark);margin-bottom:6px;font-size:1.05rem}
.tl-card h3{color:var(--green-dark);margin:4px 0;font-size:1.05rem}
.member h3{color:var(--green-dark);font-size:1.05rem}
.plat h3{color:var(--green-dark);font-size:1.05rem}
.avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.case-metric.sm{font-size:.8rem}
.btn-line.icon-only{padding:8px}
.dropdown-icon b{font-family:var(--font-head);font-weight:800}
.feat-grid.cols-2{grid-template-columns:repeat(2,1fr)}
.feat-grid.cols-4{grid-template-columns:repeat(4,1fr)}
.proc.cols-2{grid-template-columns:repeat(2,1fr)}.proc.cols-3{grid-template-columns:repeat(3,1fr)}.proc.cols-5{grid-template-columns:repeat(5,1fr)}
.rband.cols-1{grid-template-columns:1fr}.rband.cols-2{grid-template-columns:repeat(2,1fr)}.rband.cols-4{grid-template-columns:repeat(4,1fr)}
.rband.mini{grid-template-columns:repeat(3,1fr);padding:26px;border-radius:20px}
.rband.mini strong{font-size:1.6rem}
.rband.mini span{font-size:.8rem}
.opts.cols-1{grid-template-columns:1fr}.opts.cols-2{grid-template-columns:repeat(2,1fr)}.opts.cols-3{grid-template-columns:repeat(3,1fr)}
.two .field.full{grid-column:1/-1}
.post-cover{margin:30px auto 50px}
.post-cover.overlap{margin:-80px auto 50px}
.post-cover img{width:100%;height:100%;object-fit:cover}
.foot-about{font-size:.92rem}
.foot-contact{margin-top:18px}
.foot-contact li{display:flex;align-items:center;gap:8px}
.foot-contact svg{color:#D9F99D;flex-shrink:0}
footer::before{content:attr(data-mark)}
.email-link{cursor:pointer}
.cta-banner{background:linear-gradient(120deg,var(--green-dark),var(--green));color:#fff;border-radius:26px;padding:44px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.cta-banner h2{font-size:clamp(1.5rem,3vw,2.2rem)}
.cta-banner .highlight{color:#D9F99D}
.cta-banner p{color:#fff;margin-top:8px}
.cookie{position:fixed;left:16px;right:16px;bottom:16px;max-width:560px;z-index:400;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-lg);padding:18px 20px;display:flex;gap:16px;align-items:center;animation:fadeUp .6s var(--ease)}
.cookie[hidden]{display:none}
.cookie p{font-size:.9rem;color:#374151;flex:1}
.cookie a{color:var(--green);text-decoration:underline}
.cookie .btn{padding:10px 20px;font-size:.9rem;flex-shrink:0}
.news .msg{display:block}
.news-msg{font-size:.85rem;margin-top:8px;color:#D9F99D;min-height:18px}
.success .s-title{color:var(--green-dark);font-size:2rem;margin-bottom:10px}
.logo img{height:44px;width:auto}
@media (max-width:1100px){
  .feat-grid.cols-4,.stats-grid.cols-4{grid-template-columns:1fr 1fr}
  .proc.cols-5{grid-template-columns:repeat(3,1fr)}
  .ov-grid.rev>div:first-child{order:0}
}
@media (max-width:680px){
  .feat-grid.cols-2,.feat-grid.cols-4,.stats-grid.cols-2,.stats-grid.cols-4,.opts.cols-2,.opts.cols-3,.rband.cols-2,.rband.cols-4{grid-template-columns:1fr}
  .proc.cols-3,.proc.cols-5{grid-template-columns:1fr 1fr}
  .cookie{flex-direction:column;align-items:stretch;text-align:left}
  .cta-banner{padding:32px 24px}
  .post-cover.overlap{margin-top:-60px}
}
.search-res .nores{padding:12px 14px;color:#6B7280}

/* ===== Popup Get Started form ===== */
.form-modal{position:fixed;inset:0;z-index:700;background:rgba(4,19,13,.72);backdrop-filter:blur(6px);display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow-y:auto;opacity:0;transition:opacity .35s}
.form-modal[hidden]{display:none}
.form-modal.open{opacity:1}
.fm-box{position:relative;width:min(1100px,100%);transform:translateY(30px) scale(.97);transition:transform .45s var(--ease)}
.form-modal.open .fm-box{transform:none}
.fm-box>section{padding:0}
.fm-box .container{width:100%}
.form-modal .reveal{opacity:1;transform:none}
.form-modal .start-side{position:static}
.fm-close{position:absolute;right:-6px;top:-18px;z-index:5;width:46px;height:46px;border-radius:50%;border:none;background:#fff;color:var(--green);font-size:1.2rem;cursor:pointer;box-shadow:var(--shadow-lg);transition:transform .3s}
.fm-close:hover{transform:rotate(90deg)}
html.fm-lock,html.fm-lock body{overflow:hidden}
.cookie-btns{display:flex;gap:8px;flex-shrink:0}
.btn-ghost-dark{background:#fff;color:var(--green);border-color:var(--line)}
.btn-ghost-dark:hover{border-color:var(--green)}
.link-cookie{background:none;border:none;color:inherit;text-decoration:underline;cursor:pointer;font:inherit}
@media (max-width:1100px){.form-modal .start-side{display:none}}
@media (max-width:680px){.form-modal{padding:24px 10px}.fm-close{right:4px;top:-12px}.cookie-btns{width:100%}.cookie-btns .btn{flex:1;justify-content:center}}


/* =====================================================================
   v1.2 design: icon hero, partners strip, solid stat rings, 3D reveals,
   centred desktop menu, mobile/tablet header (menu left · logo centre · search right)
   ===================================================================== */
/* Desktop header: logo | centred menu | button + search */
.nav-burger{display:none}
@media (min-width:1101px){
  .nav{display:grid;grid-template-columns:1fr auto 1fr;gap:16px}
  .nav .logo{justify-self:start}
  .menu{justify-self:center}
  .nav-right{justify-self:end}
}
.nav-right .btn{padding:9px 18px;font-size:.86rem;gap:8px}
.nav-right .btn svg{width:14px;height:14px}
.nav-right .icon-btn{width:40px;height:40px}
.menu .menu-cta{display:none}
@media (max-width:1100px){
  .nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
  .nav-burger{display:grid;justify-self:start;grid-column:1;grid-row:1}
  .nav .logo{grid-column:2;grid-row:1;justify-self:center}
  .nav-right{grid-column:3;grid-row:1;justify-self:end}
  .nav-right .btn,.nav-right .burger{display:none}
  .menu .menu-cta{display:block;margin-top:10px}
  .menu .menu-cta a{justify-content:center;background:var(--green);color:#fff!important;border-radius:12px}
}

/* ---------- Icon hero ---------- */
.hero-home{position:relative;overflow:hidden;padding:96px 0 100px;text-align:center;color:#fff;background:radial-gradient(ellipse at 50% 30%,#173D2D 0%,#123528 45%,#04130D 100%)}
.hero-icons{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;-webkit-mask-image:radial-gradient(ellipse 34% 30% at 50% 55%,rgba(0,0,0,.35),#000 100%);mask-image:radial-gradient(ellipse 34% 30% at 50% 55%,rgba(0,0,0,.35),#000 100%)}
.hero-icons span{position:absolute;color:#fff;opacity:0;transform:scale(.6) rotate(var(--r));transition:opacity 1.2s ease,transform 1.2s var(--ease)}
.hero-home.bg-on .hero-icons span{opacity:var(--o);transform:scale(1) rotate(var(--r))}
.hero-glow{position:absolute;left:50%;top:40%;width:760px;max-width:100%;height:520px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(217,249,157,.16),transparent);pointer-events:none;z-index:0}
.hero-content{position:relative;z-index:3;max-width:900px;margin:0 auto}
.hero-home h1{font-size:clamp(2.1rem,5vw,3.7rem);font-weight:800;margin:0 0 20px}
.hero-home .word.grad>b{background:linear-gradient(90deg,#D9F99D,#F7FEE7,#D9F99D);background-size:200%;-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-home:not(.ready) .word>b{animation:none;transform:translateY(110%) rotate(6deg)}
.hero-description,.hero-buttons{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.hero-description{font-size:1.18rem;color:#fff;max-width:660px;margin:0 auto 30px;transition-delay:.3s}
.hero-buttons{transition-delay:.45s}
.hero-home.ready .hero-description,.hero-home.ready .hero-buttons{opacity:1;transform:none}
.hero-buttons .btn+.btn{margin-left:10px}
@media (max-width:680px){.hero-home{padding:80px 0 84px}.hero-buttons .btn+.btn{margin:10px 0 0}}

/* ---------- Partners strip ---------- */
.partners-strip{position:relative;padding:0;background:#fff;border-bottom:1px solid var(--line)}
.partners-heading{position:relative;overflow:hidden;border-top:4px solid #B6FF3B;background:linear-gradient(120deg,#04130D,var(--green) 50%,#123528);text-align:center;padding:26px 0}
.partners-heading::before{content:"";position:absolute;top:0;left:-40%;width:40%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent);transform:skewX(-20deg);animation:psShine 4s linear infinite}
@keyframes psShine{to{left:130%}}
.partners-heading h2{position:relative;color:#fff;font-size:clamp(1.6rem,3.4vw,2.4rem);font-weight:800;letter-spacing:1px;text-transform:uppercase}
.partners-heading h2 .highlight{color:#D9F99D}
.partners-heading::after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);border-left:18px solid transparent;border-right:18px solid transparent;border-bottom:14px solid #fff}
.partners-body{padding:22px 0 26px}
.partners-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.partners-track{display:flex;gap:18px;width:max-content;padding:6px 18px 6px 0;animation:marquee var(--ps-speed,30s) linear infinite}
@media (hover:hover) and (pointer:fine){.partners-marquee:hover .partners-track{animation-play-state:paused}}
.partner-badge{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #ECFCCB;border-radius:16px;padding:12px 18px;box-shadow:0 8px 22px rgba(11,34,25,.08);position:relative;overflow:hidden;transition:transform .35s var(--ease),background .35s,border-color .35s}
a.partner-badge{color:inherit}
.partner-badge.shine::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(90deg,transparent,rgba(132,204,22,.18),transparent);transform:skewX(-20deg);animation:shine 3.5s infinite}
.partner-badge:nth-child(2n)::after{animation-delay:1.2s}.partner-badge:nth-child(3n)::after{animation-delay:2.2s}
.partner-badge:hover{transform:translateY(-4px) scale(1.03);background:#F7FEE7;border-color:#B6FF3B}
.partner-logo{width:52px;height:52px;border-radius:14px;background:#fff;border:1.5px dashed #D9F99D;display:grid;place-items:center;overflow:hidden;flex-shrink:0}
.partner-logo img{max-width:80%;max-height:80%;object-fit:contain}
.partner-logo.has-img{border-style:solid;border-color:#E5E7EB}
.partner-initial{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#B6FF3B,var(--green));color:#fff;display:grid;place-items:center;font-family:var(--font-head);font-weight:800}
.partner-badge b{display:block;font-family:var(--font-head);font-size:.98rem;white-space:nowrap;color:var(--green)}
.partner-badge small{color:var(--accent);font-size:.78rem}
.partner-check{width:22px;height:22px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;margin-left:4px;flex-shrink:0}
@media (max-width:680px){.partner-badge{padding:10px 14px}.partner-badge b{font-size:.88rem}}

/* ---------- Stats with solid animated ring ---------- */
.stats-section{padding:80px 0 50px;background:linear-gradient(180deg,#fff,#F7FEE7);position:relative;z-index:5}
.stat-card{padding:34px 30px;border:1px solid var(--mint);box-shadow:var(--shadow-lg);display:flex;gap:30px;align-items:center;overflow:hidden;background:#fff}
.stat-topline{position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--green),var(--accent),#D9F99D,var(--accent),var(--green));background-size:200% 100%;animation:gradMove 3s linear infinite;transform:scaleX(0);transform-origin:left;transition:transform 1.2s var(--ease) .4s}
.stat-card.in .stat-topline{transform:scaleX(1)}
.stat-ring{width:124px;height:124px;flex-shrink:0;position:relative}
.stat-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.stat-ring circle{fill:none;stroke-width:9}
.stat-ring .ring-track{stroke:#ECFCCB}
.stat-ring .ring-fill{stroke:var(--green);stroke-linecap:round;stroke-dasharray:314.16;stroke-dashoffset:314.16;transition:stroke-dashoffset 2s cubic-bezier(.4,0,.2,1) .3s;filter:drop-shadow(0 2px 6px rgba(11,34,25,.35))}
.stat-ring .ring-num{font-size:1.6rem;color:#04130D}
.stat-card.in .ring-num{animation:numPop .6s var(--ease) 2s}
@keyframes numPop{50%{transform:scale(1.15)}}
.stat-icon{width:34px;height:34px;border-radius:10px;background:var(--mint);color:var(--green);display:inline-grid;place-items:center;margin-bottom:8px;animation:floaty 3s ease-in-out infinite}
.stat-card h3{font-size:1.12rem;color:var(--green-dark);margin-bottom:4px}
.stat-card p{color:var(--muted);font-size:.88rem}
.stat-card .s-bg-ico{position:absolute;right:-18px;bottom:-18px;color:var(--mint);opacity:.55;animation:starSpin 30s linear infinite}
.stat-card:hover .s-bg-ico{color:var(--accent);opacity:.18}
@media (max-width:680px){.stat-card{flex-direction:column;text-align:center}}

/* ---------- 3D rotate-in for animated boxes ---------- */
.motion-card.reveal{transform:perspective(1100px) rotateX(10deg) translateY(40px) scale(.96);transition:opacity .6s var(--ease),transform .7s cubic-bezier(.16,1,.3,1),box-shadow .4s}
.motion-card.reveal.left{transform:perspective(1100px) rotateY(14deg) translateX(-40px) scale(.96)}
.motion-card.reveal.right{transform:perspective(1100px) rotateY(-14deg) translateX(40px) scale(.96)}
.motion-card.reveal.in{transform:none}
@media (prefers-reduced-motion:reduce){.hero-home .word>b{animation:none!important;transform:none!important}.hero-description,.hero-buttons{opacity:1;transform:none}.hero-icons span{opacity:var(--o)}}

/* v1.2.1 */
.sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* =====================================================================
   v2.0 final design layer: neon lime + dark green
   ===================================================================== */
/* ===== v11: #0B2219 theme + outlined light-green highlights ===== */
.highlight{color:var(--green)}
.hero-home{background:radial-gradient(ellipse at 50% 30%,#173D2D 0%,#0B2219 42%,#123528 78%,#0B2219 100%)}
/* light-green words on green backgrounds: white outline so they stay readable */
/* highlight words on green backgrounds: white text on a soft mint highlighter stroke */
.partners-heading h2 span,.launch h2 .highlight,.rband strong,.page-hero h1 .highlight,.hero-home .word.grad>b,.word.grad>b{
  color:#fff!important;-webkit-text-fill-color:#fff;-webkit-text-stroke:0;filter:none;
  background:linear-gradient(180deg,transparent 55%,#B6FF3B 55%,#B6FF3B 88%,transparent 88%)!important;
  background-size:100% 100%!important;-webkit-background-clip:border-box!important;background-clip:border-box!important;
  padding:0 .06em;-webkit-box-decoration-break:clone;box-decoration-break:clone;text-shadow:0 2px 0 rgba(4,19,13,.55)}

/* v11 tablet/mobile header: menu left · logo centre · search right */
@media (max-width:1100px){
  .nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
  .nav > .burger{display:grid;justify-self:start;grid-column:1;grid-row:1}
  .nav .logo{grid-column:2;grid-row:1;justify-self:center}
  .nav-right{grid-column:3;grid-row:1;justify-self:end}
  .nav-right .btn{display:none}
  .menu>li>a::after{display:none}
}

/* ===== Neon lime theme (#B6FF3B) ===== */
.hero-home{background:radial-gradient(ellipse at 50% 30%,#173D2D 0%,#07170F 50%,#020906 100%)!important}
.hero-icons span{color:#B6FF3B!important}
/* highlight words on LIGHT backgrounds: dark text + neon marker */
.highlight{color:#04130D!important;background:linear-gradient(180deg,transparent 58%,#B6FF3B 58%,#B6FF3B 90%,transparent 90%);padding:0 .06em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
/* highlight words on DARK backgrounds: neon glow */
.partners-heading h2 span,.launch h2 .highlight,.rband strong,.page-hero h1 .highlight,.hero-home .word.grad>b,.word.grad>b{background:none!important;color:#B6FF3B!important;-webkit-text-fill-color:#B6FF3B;-webkit-text-stroke:0;
  text-shadow:0 0 14px rgba(182,255,59,.5),0 0 38px rgba(182,255,59,.25)!important;padding:0}
.btn-primary,.nav-right .btn,.hero-home .btn,.hit-btn{background:#B6FF3B!important;color:#04130D!important;box-shadow:0 0 24px rgba(182,255,59,.35)}
.btn-primary svg,.nav-right .btn svg,.hero-home .btn svg{stroke:#04130D}
.partners-heading{background:linear-gradient(120deg,#020906,#0B2219 50%,#020906)!important;border-top-color:#B6FF3B!important}
.logo-mark{background:#04130D!important;color:#B6FF3B!important;box-shadow:0 0 16px rgba(182,255,59,.35)}
.logo span{color:#04130D}
footer .logo span,.pl-logo span{color:#B6FF3B!important}
.menu>li>a.active{background:#04130D!important;color:#B6FF3B!important}
footer a:hover,footer li a:hover{color:#B6FF3B!important}

/* Version B: hero text left, image box right */
.hero-split{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center;max-width:1240px!important;text-align:left}
.hero-split h1{font-size:clamp(2.1rem,4.2vw,3.4rem)}
.hero-split .hero-description{margin-left:0;margin-right:0}
.hero-media{position:relative}
.hero-image{aspect-ratio:4/3.4;border-radius:28px;border:1.5px solid rgba(182,255,59,.55);background:linear-gradient(135deg,#123528,#07170F 70%);
  box-shadow:0 0 0 8px rgba(182,255,59,.06),0 30px 70px rgba(0,0,0,.45),0 0 60px rgba(182,255,59,.15);display:grid;place-items:center;align-content:center;gap:12px;color:#B6FF3B}
.hero-image span{color:#fff;font-size:.95rem}
.hero-card{position:absolute;background:#fff;color:#04130D;border-radius:16px;padding:12px 16px;box-shadow:0 18px 40px rgba(0,0,0,.35);display:grid;line-height:1.15;animation:floatY 4s ease-in-out infinite}
.hero-card b{font-family:'Poppins',sans-serif;font-size:1.35rem}.hero-card small{color:#6B7280;font-size:.78rem}
.hero-card.chip-one{left:-28px;bottom:36px}.hero-card.chip-two{right:-18px;top:30px;background:#B6FF3B;animation-delay:-2s}.hero-card.chip-two small{color:#123528}
@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media (max-width:900px){.hero-split{grid-template-columns:1fr;gap:40px;text-align:center}.hero-split .hero-description{margin:0 auto 30px}.hero-card.chip-one{left:-6px}.hero-card.chip-two{right:-6px}}

/* ===== Final neon-b tweaks ===== */
/* jet white text */
.hero-image span,.hero-description{color:#fff!important}
/* partners strip separated from the hero */
.partners-strip{margin-top:56px}
/* stats: no rotating background icons */
.stat-card .s-bg-ico{display:none!important}
/* "Everything Your Store Needs" heading in site green */
.offers-sec .section-head h2,.offers-sec .section-head .highlight{color:#166534!important}
/* light sections -> same dark green as the hero */
.bg-soft,.stats-section,.cold{background:radial-gradient(ellipse at 50% 0%,#173D2D 0%,#07170F 55%,#020906 100%)!important;color:#fff}
.bg-soft .section-head h2,.bg-soft .section-head p,.bg-soft .builds-left h2,.bg-soft .builds-left>p,.cold .section-head p{color:#fff!important}
.bg-soft .eyebrow,.stats-section .eyebrow{background:rgba(182,255,59,.12);color:#B6FF3B;border:1px solid rgba(182,255,59,.35)}
.bg-soft .highlight,.cold .highlight{background:none!important;color:#B6FF3B!important;-webkit-text-fill-color:#B6FF3B;text-shadow:0 0 14px rgba(182,255,59,.45);padding:0}
.stat-card{border-color:rgba(182,255,59,.25)}
/* Cold Start boxes: smaller, running bar */
.coldstart-marquee{cursor:default;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.coldstart-track{gap:0!important;width:max-content;transition:none!important;animation:csMarq var(--speed,60s) linear infinite!important}
@media (hover:hover) and (pointer:fine){.coldstart-marquee:hover .coldstart-track{animation-play-state:paused!important}}
@keyframes csMarq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.coldstart-card{flex:0 0 340px!important;height:220px!important;margin-right:20px;transform:none!important;opacity:1!important;filter:none!important;border-radius:20px;border:1px solid rgba(182,255,59,.25)}
.coldstart-card img{transform:none!important}
.coldstart-caption{grid-template-columns:1fr!important;gap:8px!important;padding:16px!important}
.coldstart-caption>*{opacity:1!important;transform:none!important}
.coldstart-caption p{display:none}
.coldstart-number{font-size:1.5rem!important;-webkit-text-stroke:1.2px #B6FF3B!important}
.coldstart-caption h3{font-size:1rem!important;color:#fff}
.coldstart-fix{padding:10px 12px!important;font-size:.8rem!important;color:#fff}
.coldstart-fix b{color:#B6FF3B!important;font-size:.72rem!important}
.coldstart-badge{top:12px!important;left:12px!important;font-size:.64rem!important;padding:4px 10px!important}
.cs-ctrl{display:none!important}

/* FAQ: dark green section, neon answers */
.faq-sec{background:radial-gradient(ellipse at 50% 0%,#173D2D 0%,#07170F 55%,#020906 100%);color:#fff}
.faq-sec .section-head h2,.faq-sec .section-head p{color:#fff!important}
.faq-sec .eyebrow{background:rgba(182,255,59,.12);color:#B6FF3B;border:1px solid rgba(182,255,59,.35)}
.faq-sec .highlight{background:none!important;color:#B6FF3B!important;-webkit-text-fill-color:#B6FF3B;text-shadow:0 0 14px rgba(182,255,59,.45);padding:0}
.faq-sec .faq{background:rgba(255,255,255,.05);border-color:rgba(182,255,59,.22)}
.faq-sec .faq-question{color:#fff}
.faq-sec .faq-icon{background:rgba(182,255,59,.14);color:#B6FF3B}
.faq-sec .faq.open{background:rgba(255,255,255,.06);border-color:#B6FF3B;box-shadow:0 0 30px rgba(182,255,59,.18)}
.faq-sec .faq.open .faq-icon{background:#B6FF3B;color:#04130D}
.faq-sec .faq-answer{background:#B6FF3B}
.faq-sec .faq-answer p{color:#04130D!important;padding:18px 26px 22px;font-weight:500}
/* inner page heroes match the home hero */
.page-hero .btn-light{background:#B6FF3B!important;color:#04130D!important;box-shadow:0 0 24px rgba(182,255,59,.35)}
.page-hero{background:radial-gradient(ellipse at 50% 0%,#173D2D 0%,#07170F 55%,#020906 100%)!important}

/* ===== Round 3 tweaks ===== */
/* remove photo / blob / grid / dashed-ring effects everywhere */
.phero-bg,.hero-bg,.blob,.grid-bg,.deliv-box::after{display:none!important}
.avatar::after{display:none!important}
/* page hero: text on the left, floating icon on the right, never overlapping */
.page-hero-inner{max-width:none!important}
.page-hero-inner>h1,.page-hero-inner>p,.page-hero-inner>.crumbs{max-width:min(680px,100% - 320px)}
.page-hero-icon{right:calc((100% - min(1200px,100% - 32px))/2 + 40px)!important}
.page-hero-icon svg{color:#B6FF3B!important;filter:drop-shadow(0 0 12px rgba(182,255,59,.45))}
.page-hero-icon::before{border-color:rgba(182,255,59,.55)!important}
@media (max-width:1100px){.page-hero-inner>h1,.page-hero-inner>p{max-width:none}}
/* white icons on green boxes -> dark icons on neon boxes */
.service-icon,.p-badge .dot,.plat .ind-logo,.hit-arrow,.mini-list li i,.avatar,.deliv-list li i,
.dropdown a:hover .dropdown-icon,.icon-btn:hover,.build:hover .build-ico{background:#B6FF3B!important;color:#04130D!important;border-color:#B6FF3B!important}
.service-card:hover .service-icon{box-shadow:0 0 26px rgba(182,255,59,.45)}
/* big 01 / 02 numbers: visible lime outline, neon fill on hover */
.problem-number,.service-number,.offer-number{color:transparent!important;-webkit-text-stroke:1.6px #84CC16!important;transition:all .4s var(--ease)}
.problem-card:hover .problem-number,.service-card:hover .service-number,.offer:hover .offer-number{color:#B6FF3B!important;-webkit-text-stroke:1.6px #04130D!important;text-shadow:0 0 22px rgba(182,255,59,.55)}

/* v2.0 CMS additions */
.hero-image{overflow:hidden}
.hero-image img,.hero-image video{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}
.hero-image:has(img),.hero-image:has(video){display:block}
@media (max-width:1100px){
  .nav .icon-btn{background:#04130D!important;color:#B6FF3B!important;border-color:#04130D!important}
}
.coldstart-card{cursor:default}
/* Smooth scrolling: hidden hover borders only spin on hover; sections off screen pause their motion; shine moves on the GPU */
.motion-card::before,.service-icon::after{animation-play-state:paused}
.motion-card:hover::before,.service-card:hover .service-icon::after{animation-play-state:running}
.anim-off,.anim-off *,.anim-off *::before,.anim-off *::after{animation-play-state:paused!important}
.shine-on .p-badge::after,.partner-badge.shine::after{animation-name:shineGpu}
@keyframes shineGpu{0%{transform:translateX(0) skewX(-20deg)}40%,100%{transform:translateX(475%) skewX(-20deg)}}
/* Hero icon field: one picture that fades in once */
.hero-icons{background-repeat:no-repeat;background-position:0 0;opacity:0;transition:opacity .9s ease}
.hero-home.bg-on .hero-icons{opacity:1}
/* Phones (no mouse): the script adds .tap to cards when tapped or in the middle of the screen */
.motion-card.tap::before,.motion-card.tap::after{opacity:1}.motion-card.tap{box-shadow:var(--shadow-lg)}.motion-card.tap .shine::before{animation:shineOnce .9s ease}.no-tilt .motion-card.tap{transform:translateY(-6px)}.stat.tap .s-bg-ico{transform:rotate(0) scale(1.2);color:var(--accent);opacity:.2}.offer.tap .offer-img img{transform:scale(1.15) rotate(1.5deg)}.offer.tap .offer-tag{transform:none}.offer.tap .offer-number{color:var(--accent)}.case.tap .case-img img{transform:scale(1.12)}.problem-card.tap .fill{clip-path:circle(150% at var(--mx,50%) var(--my,50%))}.problem-card.tap h3,.problem-card.tap p{color:#fff}.problem-card.tap .problem-icon{background:rgba(255,255,255,.15);color:#D9F99D;transform:rotate(-12deg) scale(1.12)}.problem-card.tap .problem-number{color:rgba(255,255,255,.15)}.service-card.tap .service-number{color:var(--mint);transform:scale(1.15) rotate(-6deg)}.service-card.tap .service-icon{transform:rotateY(360deg);background:var(--accent)}.service-card.tap .service-icon::after{opacity:1}.service-card.tap li{transform:translateX(4px)}.service-card.tap li:nth-child(2){transition-delay:.05s}.service-card.tap li:nth-child(3){transition-delay:.1s}.build.tap .build-ico{background:var(--green);color:#fff;transform:scale(1.1) rotate(10deg)}.role.tap .role-ico{transform:rotate(360deg);background:var(--accent)}.step.tap .step-n{background:var(--green);color:#fff;border-color:var(--accent)}.ind-card.tap .ind-logo{transform:rotate(-12deg) scale(1.1)}.float-box.tap{animation-play-state:paused}.member.tap .avatar{transform:scale(1.08)}.member.tap .avatar::after{opacity:1}.stat-card.tap .s-bg-ico{color:var(--accent);opacity:.18}.build.tap .build-ico{background:#B6FF3B!important;color:#04130D!important;border-color:#B6FF3B!important}.service-card.tap .service-icon{box-shadow:0 0 26px rgba(182,255,59,.45)}.problem-card.tap .problem-number,.service-card.tap .service-number,.offer.tap .offer-number{color:#B6FF3B!important;-webkit-text-stroke:1.6px #04130D!important;text-shadow:0 0 22px rgba(182,255,59,.55)}.motion-card.tap::before,.service-card.tap .service-icon::after{animation-play-state:running}
/* Phone/tablet header: menu and search keep a fixed place; a long logo name or wide logo image fits in the middle */
@media (max-width:1100px){.nav{grid-template-columns:44px minmax(0,1fr) 44px!important;gap:10px!important}.nav .logo{min-width:0;max-width:100%;overflow:hidden;white-space:nowrap;justify-self:center}.nav .logo img{max-width:100%;height:38px;object-fit:contain}.nav-right{min-width:0;justify-self:end}}
@media (max-width:420px){.nav .logo{font-size:clamp(.82rem,3.9vw,1.05rem);gap:7px}.nav .logo .logo-mark{width:36px;height:36px;flex:none}}
/* Phones: same crossing ribbons as on desktop, a steeper angle and slimmer bars so both lines of text show */
@media (max-width:680px){.tie-wrap{height:230px}.ribbon{padding:11px 0}.ribbon .track span{font-size:.9rem;gap:26px;padding:0 14px}.ribbon.r1{transform:rotate(-10deg)}.ribbon.r2{transform:rotate(10deg)}}
/* Logo image size comes from Admin → Header Settings; the header grows with a tall logo */
.nav .logo img{height:var(--logo-h,64px);width:auto}
#header .nav{height:max(78px,calc(var(--logo-h,64px) + 14px))}
@media (max-width:1100px){.nav .logo img{height:var(--logo-hm,56px)}#header .nav{height:max(78px,calc(var(--logo-hm,56px) + 14px))}#header .menu{top:max(78px,calc(var(--logo-hm,56px) + 14px))}}
/* Menu: no dark box behind the current/hovered item, only the neon underline */
.menu>li>a.active,.menu>li>a:hover{background:transparent!important;color:#04130D!important}
/* Phone/tablet header: logo on the left, menu button on the right, no search button */
@media (max-width:1100px){#header .nav{grid-template-columns:minmax(0,1fr) 44px!important}#header .nav .logo{grid-column:1!important;grid-row:1;justify-self:start!important;max-width:100%}#header .nav-burger{grid-column:2!important;grid-row:1;justify-self:end!important}#header .nav-right{display:none!important}}
/* Computers: the menu sits in the middle of the free space between the logo and the button, so both gaps look equal */
@media (min-width:1101px){#header .nav{display:flex!important;justify-content:space-between;gap:24px}#header .nav .logo{flex:none}#header .menu{flex:1;justify-content:center;min-width:0}#header .nav-right{flex:none}}
@media (min-width:1101px){#header .menu{justify-content:space-evenly}}
/* Header: solid white (no see-through glass), lighter on phones */
#header{background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
/* Home hero: picture box keeps its full size and sits in the middle of its column; open spacing between heading, text and button */
@media (min-width:1101px){.hero-split .hero-media{width:100%;justify-self:stretch;align-self:center}}
.hero-home h1{margin-bottom:30px!important}
.hero-split .hero-description{margin-bottom:42px!important}
@media (max-width:1100px){.hero-home h1{margin-bottom:22px!important}.hero-split .hero-description{margin-bottom:32px!important}}
/* Home hero balance: text and picture box get equal room, heading a little smaller, intro text pure white */
@media (min-width:1101px){.hero-split{grid-template-columns:1fr 1fr!important;gap:56px!important}.hero-split h1{font-size:clamp(2.1rem,3.5vw,3rem)!important}.hero-split .hero-image{aspect-ratio:1/0.96!important}}
.hero-description,.hero-split .hero-description{color:#FFFFFF!important;opacity:1!important}
/* Home hero: heading lines up with the top of the picture box, button with its bottom; when the intro is short, the extra room is shared by the two gaps (never less than 30px / 42px) */
@media (min-width:1101px){.hero-split .hero-text{display:flex;flex-direction:column;align-self:stretch;justify-content:center}.hero-split h1{margin-bottom:0!important;padding-bottom:30px}.hero-split .hero-description{margin:auto 0!important;padding-bottom:42px}}
/* Home hero: the picture box takes the height of the text block (at least 400px), so both always match */
@media (min-width:1101px){.hero-split{align-items:stretch!important}.hero-split .hero-media{align-self:stretch!important;display:flex}.hero-split .hero-image{aspect-ratio:auto!important;width:100%;height:auto;min-height:460px;flex:1}}
/* Home hero fits a laptop screen: less top/bottom padding, heading and intro 2px smaller */
@media (min-width:1101px){.hero-home{padding:56px 0 64px!important}.hero-split h1{font-size:clamp(2rem,3.3vw,2.875rem)!important}.hero-split .hero-description{font-size:1.06rem!important}.hero-split .hero-image{min-height:420px!important}}
/* Lime text is solid (no neon glow) */
.partners-heading h2 span,.launch h2 .highlight,.rband strong,.page-hero h1 .highlight,.hero-home .word.grad>b,.word.grad>b,.bg-soft .highlight,.cold .highlight,.faq-sec .highlight,.problem-card:hover .problem-number,.service-card:hover .service-number,.offer:hover .offer-number,.problem-card.tap .problem-number,.service-card.tap .service-number,.offer.tap .offer-number{text-shadow:none!important}
/* No moving shine over cards, images and badges */
.motion-card .shine,.shine{display:none!important}
.shine-on .p-badge::after,.partner-badge.shine::after,.partners-heading::before{content:none!important;animation:none!important;display:none!important}
/* Faster entrance: heading words, hero text/button and scroll reveals no longer feel late */
.word>b{animation-duration:.55s!important}
.hero-home .hero-description,.hero-home .hero-buttons{transition:opacity .45s var(--ease),transform .45s var(--ease)!important;transition-delay:.1s!important}
html .reveal{transition:opacity .5s var(--ease),transform .55s cubic-bezier(.16,1,.3,1),box-shadow .4s}
/* "Builds" section: both columns the same height; picture box fills the left side, the three cards share the right side */
@media (min-width:1101px){.builds-grid{align-items:stretch!important}.builds-left{display:flex;flex-direction:column}.builds-img{flex:1;height:auto!important;min-height:240px}.build-list{grid-auto-rows:1fr;align-content:stretch}.build-list .build{display:flex;align-items:center}}
.fade-up{animation-duration:.5s!important}
#preloader{transition:transform .5s var(--ease-io)!important}
/* Footer: white like the header; all text in the site's dark green; solid lime Join button; a clear gap and line above it */
footer{background:#fff!important;color:#04130D!important;border-top:1px solid #E5E7EB;margin-top:80px}
footer::before{color:rgba(4,19,13,.045)!important;-webkit-text-stroke:0!important;opacity:1!important}
footer .logo,footer .logo span{color:#04130D!important}
footer .logo .logo-mark{background:#04130D!important;color:#B6FF3B!important}
footer h4,footer .footer-heading,footer p,footer li,footer .foot-about,footer a,footer li a,footer .email-link,.foot-contact svg{color:#04130D!important}
footer a:hover,footer li a:hover{color:#166534!important}
.socials a{background:#04130D!important;color:#B6FF3B!important}
.socials a:hover{background:#B6FF3B!important;color:#04130D!important}
.news{background:#F3F4F6!important;border:1px solid #E5E7EB}
.news input{color:#04130D!important}
.news input::placeholder{color:#04130D!important;opacity:.6}
.news button{background:#B6FF3B!important;color:#04130D!important;box-shadow:none!important;text-shadow:none!important;filter:none!important}
.news-msg{color:#04130D!important}
.foot-bottom{border-top:1px solid #E5E7EB!important;color:#04130D!important}
.foot-bottom a{color:#04130D!important}
/* Builds section with a long intro: picture box may shrink further, cards look full when they stretch */
@media (min-width:1101px){.builds-img{min-height:190px!important}.build-list .build{padding:26px 28px}.build-list .build-ico{width:58px;height:58px}.build-list .build h3{font-size:1.15rem}.build-list .build p{font-size:.97rem;margin-bottom:14px}}
/* Footer watermark: size from Admin → Footer (Auto fits the screen width) */
footer::before{font-size:var(--mark-size,clamp(4rem,16vw,14rem))!important;max-width:none}
/* Get Started popup opens instantly: no full-page blur behind it, quicker entrance, page animations paused while it is open */
.form-modal{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:rgba(4,19,13,.86)!important;transition:opacity .18s ease!important}
.form-modal .fm-box{transition:transform .22s var(--ease)!important;transform:translateY(12px)}
.form-modal.open .fm-box{transform:none}
html.fm-lock main *,html.fm-lock main *::before,html.fm-lock main *::after,html.fm-lock header *,html.fm-lock footer *{animation-play-state:paused!important}
/* Get Started popup opens and closes in a blink: no fade or slide, and the page does not shift when scrolling is locked */
.form-modal,.form-modal .fm-box{transition:none!important}
.form-modal .fm-box,.form-modal.open .fm-box{transform:none!important}
html{scrollbar-gutter:stable}
