:root{
  --bg:#07141a;
  --panel:#0e222c;
  --panel-2:#13303d;
  --line:#244956;
  --text:#f8fffc;
  --muted:#b7c4c6;
  --lime:#f2d637;
  --mint:#9df1c1;
  --cream:#f7f6eb;
  --ink:#102228;
  --white:#ffffff;
  --shadow:0 25px 70px rgba(0,0,0,.28);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Inter",sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.6;
}
h1,h2,h3,h4,b,strong{font-family:"Manrope",sans-serif}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
.container{width:min(1180px,92%);margin:auto}
.section{padding:96px 0}
.center{text-align:center;margin-inline:auto}
.muted-center{color:var(--muted);text-align:center;margin-top:-18px;margin-bottom:30px}
.section-title{max-width:860px;margin-bottom:42px}
.section-title h2,.intro-grid h2,.faq-grid h2,.contact-grid h2{
  font-size:clamp(34px,4.8vw,56px);
  line-height:1.08;
  letter-spacing:-2.5px;
  margin:10px 0 12px;
}
.section-title p,.intro-copy p,.faq-grid p,.contact-grid p{color:var(--muted);font-size:17px}
.section-kicker,.eyebrow{
  display:inline-block;
  font-size:12px;
  font-weight:800;
  letter-spacing:1.4px;
  color:var(--mint);
  text-transform:uppercase;
}
.section-kicker.light{color:var(--lime)}

.announcement-bar{
  background:var(--lime);
  color:#111;
  position:relative;
  z-index:120;
}
.announcement-inner{
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  flex-wrap:wrap;
  text-align:center;
  padding:6px 0;
  font-size:13px;
}
.mini-cta{
  border:0;
  background:#111;
  color:#fff;
  padding:7px 12px;
  border-radius:999px;
  font-weight:800;
  cursor:pointer;
}

.site-header{
  position:sticky;
  top:0;
  z-index:110;
  background:rgba(7,20,26,.88);
  backdrop-filter:blur(15px);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.nav-wrap{
  height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.brand img{
  width:116px;
  height:60px;
  object-fit:contain;
  border-radius:8px;
}
.nav-links{
  display:flex;
  align-items:center;
  gap:24px;
  font-size:14px;
  font-weight:700;
}
.nav-links a:hover{color:var(--lime)}
.nav-cta{
  background:var(--lime);
  color:#111 !important;
  padding:10px 16px;
  border-radius:10px;
}
.menu-btn{
  display:none;
  background:none;
  border:0;
  color:#fff;
  font-size:26px;
  cursor:pointer;
}

.hero{
  position:relative;
  overflow:hidden;
  padding:102px 0 80px;
  background:
    radial-gradient(circle at 78% 22%, rgba(242,214,55,.16), transparent 27%),
    radial-gradient(circle at 20% 20%, rgba(157,241,193,.08), transparent 20%),
    linear-gradient(145deg,#07141a,#0b2028);
}
.hero-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:70px;
  align-items:center;
  position:relative;
}
.hero-glow{
  position:absolute;
  border-radius:50%;
  filter:blur(40px);
}
.glow-1{width:220px;height:220px;background:rgba(157,241,193,.08);left:-60px;top:60px}
.glow-2{width:280px;height:280px;background:rgba(242,214,55,.12);right:-100px;top:-20px}
.hero h1{
  font-size:clamp(46px,6vw,80px);
  line-height:1.02;
  letter-spacing:-4px;
  margin:16px 0 20px;
  max-width:770px;
}
.hero h1 em{font-style:normal;color:var(--lime)}
.hero h1 span{display:block}
.hero p{font-size:18px;color:var(--muted);max-width:680px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:0 22px;
  border-radius:14px;
  border:1px solid transparent;
  font-weight:800;
  cursor:pointer;
}
.btn-primary{
  background:var(--lime);
  color:#111;
  position:relative;
  overflow:hidden;
}
.btn-primary::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(115deg, transparent 20%, rgba(255,255,255,.35) 48%, transparent 70%);
  transform:translateX(-120%);
  animation:shine 4s ease-in-out infinite;
}
@keyframes shine{
  0%,60%{transform:translateX(-120%)}
  100%{transform:translateX(120%)}
}
.btn-secondary{
  background:rgba(255,255,255,.03);
  color:#fff;
  border-color:#3a5560;
}
.btn-dark{
  background:#111;
  color:#fff;
}
.btn-full{width:100%}
.disabled-link{pointer-events:none;opacity:.5}

.hero-proof{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin-top:40px;
}
.hero-proof div{
  border-left:1px solid #35505c;
  padding-left:12px;
}
.hero-proof b{display:block}
.hero-proof span{font-size:12px;color:var(--muted)}
.hero-card{
  background:linear-gradient(160deg,#102630,#0c1e25);
  border:1px solid #2c4955;
  border-radius:28px;
  padding:30px;
  box-shadow:var(--shadow);
}
.hero-card-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
}
.hero-card-top span{font-size:11px;color:var(--muted);font-weight:800}
.hero-card-top b{
  background:rgba(242,214,55,.16);
  color:var(--lime);
  padding:4px 8px;
  border-radius:999px;
  font-size:11px;
}
.score-orb{
  width:180px;
  height:180px;
  border-radius:50%;
  border:14px solid var(--lime);
  margin:30px auto;
  display:grid;
  place-items:center;
  text-align:center;
}
.score-orb strong{font-size:60px;line-height:1}
.score-orb small{font-size:11px;color:var(--muted)}
.mini-metrics{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:9px;
}
.mini-metrics div{
  background:#142f39;
  border:1px solid #294752;
  border-radius:12px;
  padding:12px;
}
.mini-metrics span{display:block;font-size:10px;color:var(--muted)}
.hero-card-link{
  margin-top:20px;
  padding:0;
  border:0;
  background:none;
  color:var(--lime);
  font-weight:800;
  cursor:pointer;
}

.service-marquee-band{
  border-top:1px solid #1f3944;
  border-bottom:1px solid #1f3944;
  background:#0a1a21;
  overflow:hidden;
}
.marquee{
  position:relative;
  overflow:hidden;
}
.marquee-track{
  display:flex;
  width:max-content;
  gap:16px;
  padding:16px 0;
}
.marquee-track span{
  border:1px solid #31515d;
  background:#11252e;
  padding:11px 18px;
  border-radius:999px;
  white-space:nowrap;
  font-weight:700;
  color:#e8fff4;
}
.marquee-right .marquee-track{
  animation:marqueeRight 26s linear infinite;
}
@keyframes marqueeRight{
  from{transform:translateX(-45%)}
  to{transform:translateX(0)}
}

.intro-section{
  background:var(--cream);
  color:var(--ink);
}
.intro-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:80px;
  align-items:end;
}
.intro-grid h2 span{color:#055c67}
.intro-copy p{color:#5a6b6b}
.text-link{
  border:0;
  padding:0;
  background:none;
  color:#073e4a;
  font-weight:800;
  cursor:pointer;
}

.audit-section{background:#061219}
.audit-shell{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  border:1px solid #22434d;
  border-radius:28px;
  overflow:hidden;
}
.audit-questions{
  padding:28px;
  background:#0d1e25;
}
.progress-box{margin-bottom:18px}
.progress-head{
  display:flex;
  justify-content:space-between;
  font-size:12px;
  color:var(--muted);
}
.progress-bar{
  height:6px;
  background:#1d3741;
  border-radius:999px;
  margin-top:8px;
  overflow:hidden;
}
.progress-bar span{
  display:block;
  width:0;
  height:100%;
  background:var(--lime);
  transition:.3s;
}
.audit-question{
  display:grid;
  grid-template-columns:1fr auto;
  gap:20px;
  align-items:center;
  padding:18px 0;
  border-top:1px solid #233f48;
}
.audit-question p{margin:0;font-weight:700}
.toggle-group{display:flex;gap:8px}
.toggle-group button{
  border:1px solid #365660;
  background:#142831;
  color:#d9e7e4;
  padding:9px 12px;
  border-radius:10px;
  cursor:pointer;
  font-size:12px;
  font-weight:700;
}
.toggle-group button.active{
  background:var(--lime);
  color:#111;
  border-color:var(--lime);
}

.audit-result{
  padding:34px;
  background:linear-gradient(180deg,#f2d637,#9df1c1);
  color:#111;
}
.result-kicker{
  font-size:11px;
  font-weight:900;
  letter-spacing:1.4px;
}
.result-score{
  margin-top:18px;
  display:flex;
  align-items:flex-end;
  gap:8px;
}
.result-score strong{
  font-size:96px;
  line-height:.9;
  letter-spacing:-5px;
}
.result-score small{font-size:22px}
.audit-result h3{
  font-size:30px;
  line-height:1.1;
  margin:6px 0 8px;
}
.audit-result p{color:#344144}
.result-meter{
  height:10px;
  background:rgba(17,17,17,.15);
  border-radius:999px;
  overflow:hidden;
  margin:24px 0 22px;
}
.result-meter span{
  display:block;
  width:0;
  height:100%;
  background:#111;
  transition:.3s;
}
.audit-result small{display:block;text-align:center;margin-top:10px}

.services-section{
  background:#f5f7f0;
  color:#101a1e;
}
.services-section .section-title p{color:#667274}
.service-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.service-card{
  background:#fff;
  border:1px solid #dde6de;
  border-radius:20px;
  padding:28px;
  min-height:240px;
}
.service-no{
  font-size:11px;
  font-weight:900;
  color:#6a7679;
}
.service-card h3{
  font-size:24px;
  margin:24px 0 8px;
}
.service-card p{color:#647173}

.process-section{
  background:#0a171d;
}
.process-shell{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:20px;
}
.process-nav{
  display:grid;
  gap:12px;
}
.process-step{
  display:grid;
  grid-template-columns:58px 1fr;
  gap:14px;
  padding:16px;
  border:1px solid #27434d;
  border-radius:18px;
  background:#10242c;
  color:#fff;
  text-align:left;
  cursor:pointer;
}
.process-step span{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#132e38;
  color:var(--lime);
  font-weight:900;
}
.process-step b{display:block;font-size:18px}
.process-step small{color:var(--muted)}
.process-step.active{
  border-color:var(--lime);
  background:#14303a;
  transform:translateX(4px);
}
.process-content-card{
  border:1px solid #28444f;
  background:linear-gradient(160deg,#10252e,#0c1d24);
  border-radius:24px;
  padding:28px;
  min-height:100%;
}
.process-tag{
  display:inline-block;
  font-size:10px;
  font-weight:900;
  letter-spacing:1.2px;
  color:#111;
  background:var(--lime);
  padding:6px 10px;
  border-radius:999px;
}
.process-content-card h3{
  font-size:34px;
  margin:16px 0 8px;
}
.process-content-card p{color:var(--muted);font-size:17px}
.process-points{
  margin:20px 0 0;
  padding-left:18px;
}
.process-points li{
  margin:10px 0;
  color:#eef6f2;
}

.clients-section{
  background:var(--cream);
  color:#101b20;
}
.clients-section .section-title p{color:#667173}
.logo-marquee-wrap{display:grid;gap:18px}
.logo-marquee{
  overflow:hidden;
  border:1px solid #d9e2db;
  background:#fff;
  border-radius:22px;
  padding:14px 0;
}
.logo-track{
  display:flex;
  width:max-content;
  gap:14px;
}
.logo-marquee.left .logo-track{animation:logoLeft 28s linear infinite}
.logo-marquee.right .logo-track{animation:logoRight 32s linear infinite}
@keyframes logoLeft{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
@keyframes logoRight{
  from{transform:translateX(-50%)}
  to{transform:translateX(0)}
}
.logo-pill{
  min-width:220px;
  padding:16px 18px;
  border:1px solid #dce6df;
  border-radius:16px;
  background:#f8faf7;
  display:grid;
  place-items:center;
  font-weight:800;
  color:#314248;
}
.logo-pill.featured{
  background:#fff8d0;
  border-color:#f2d637;
  color:#7a6200;
}

.testimonials-section{
  background:#09171d;
}
.testimonial-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.testimonial-card{
  background:#10252d;
  border:1px solid #27444f;
  border-radius:20px;
  padding:22px;
}
.testimonial-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:14px;
}
.city{
  font-size:11px;
  font-weight:900;
  letter-spacing:1.1px;
  color:var(--lime);
  text-transform:uppercase;
}
.li-badge{
  width:28px;
  height:28px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#0a66c2;
  color:#fff;
  font-weight:900;
  font-size:12px;
}
.testimonial-card p{color:#d6e0de}
.testimonial-card h4{
  margin:16px 0 2px;
  font-size:19px;
}
.testimonial-card span{
  color:var(--muted);
  font-size:13px;
}

.faq-section{
  background:#f7f7ef;
  color:#101b20;
}
.faq-grid{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:70px;
}
.faq-grid p{color:#647174}
.faq-list details{
  padding:18px 0;
  border-bottom:1px solid #d7e0d9;
}
.faq-list summary{
  list-style:none;
  cursor:pointer;
  font-weight:800;
  font-size:18px;
}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{
  content:"+";
  float:right;
  font-size:24px;
}
.faq-list details[open] summary::after{content:"–"}
.faq-list p{
  color:#5f6d70;
  margin-right:30px;
}

.contact-section{
  background:linear-gradient(145deg,#09161b,#10303a);
}
.contact-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;
  align-items:center;
}
.contact-info-grid{
  display:grid;
  grid-template-columns:.7fr 1.3fr;
  gap:12px;
  margin-top:26px;
}
.contact-info-grid a,.contact-info-grid div{
  border:1px solid #315059;
  border-radius:16px;
  background:rgba(255,255,255,.03);
  padding:16px;
}
.contact-info-grid small{
  display:block;
  font-size:10px;
  font-weight:900;
  letter-spacing:1.1px;
  color:var(--lime);
  margin-bottom:6px;
}
.contact-info-grid strong{
  display:block;
  font-size:14px;
  line-height:1.5;
}
.contact-card{
  background:var(--cream);
  color:#111;
  border-radius:24px;
  padding:30px;
}
.contact-card > span{
  font-size:11px;
  font-weight:900;
  color:#4a6f5b;
}
.contact-card h3{
  font-size:30px;
  line-height:1.12;
  margin:10px 0;
}
.contact-card p{color:#566564}
.contact-card small{
  display:block;
  text-align:center;
  color:#6d7a77;
  margin-top:10px;
}

.site-footer{
  background:#04090b;
  padding:42px 0;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr 1fr .8fr;
  gap:28px;
}
.footer-logo{
  width:112px;
  height:94px;
  object-fit:contain;
  background:var(--cream);
  border-radius:10px;
}
.site-footer p,.site-footer span,.site-footer a{
  font-size:12px;
  color:#99a9a9;
}
.site-footer b{
  display:block;
  margin-bottom:8px;
}
.site-footer a{display:block;margin:5px 0}
.site-footer a:hover{color:var(--lime)}
.footer-social{margin-top:16px}
.social-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:10px;
}
.social-btn{
  width:42px;
  height:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.04);
  border:1px solid #35505a;
  color:#fff;
}
.social-btn svg{
  width:18px;
  height:18px;
  fill:currentColor;
}
.social-btn:hover{
  color:var(--lime);
  border-color:var(--lime);
}

.floating-whatsapp{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:99;
  background:var(--lime);
  color:#111;
  padding:13px 18px;
  border-radius:999px;
  font-weight:900;
  box-shadow:0 14px 40px rgba(0,0,0,.22);
}
.floating-follow-wrap{
  position:fixed;
  left:18px;
  bottom:18px;
  z-index:98;
}
.floating-follow-toggle{
  border:0;
  background:#fff;
  color:#111;
  min-height:44px;
  padding:0 16px;
  border-radius:999px;
  box-shadow:0 14px 40px rgba(0,0,0,.22);
  font-weight:900;
  cursor:pointer;
}
.floating-follow-panel{
  position:absolute;
  left:0;
  bottom:54px;
  display:none;
  gap:10px;
  padding:12px;
  border-radius:16px;
  background:#0d1f27;
  border:1px solid #27424c;
  box-shadow:0 20px 50px rgba(0,0,0,.3);
  width:176px;
  flex-wrap:wrap;
}
.floating-follow-panel.show{display:flex}

.recent-toast{
  position:fixed;
  left:50%;
  transform:translateX(-50%);
  bottom:84px;
  z-index:97;
  background:#fff;
  color:#111;
  border-radius:14px;
  padding:12px 14px;
  box-shadow:0 18px 50px rgba(0,0,0,.24);
  border:1px solid #e2e6e0;
  min-width:min(460px,90vw);
  max-width:90vw;
  display:none;
}
.recent-toast.show{display:block}
.recent-toast strong{display:block;font-size:13px}
.recent-toast span{display:block;font-size:12px;color:#536163}

.audit-popup-overlay{
  position:fixed;
  inset:0;
  z-index:999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(2,8,10,.78);
  backdrop-filter:blur(8px);
}
.audit-popup-overlay.show{display:flex}
.audit-popup-card{
  width:min(560px,100%);
  background:var(--cream);
  color:#111;
  border-radius:28px;
  padding:34px;
  box-shadow:0 34px 120px rgba(0,0,0,.42);
  border:1px solid rgba(242,214,55,.5);
  position:relative;
}
.audit-popup-close{
  position:absolute;
  right:14px;
  top:14px;
  width:38px;
  height:38px;
  border:1px solid #d7ddd8;
  border-radius:50%;
  background:#fff;
  font-size:24px;
  cursor:pointer;
}
.popup-badge{
  display:inline-block;
  background:var(--lime);
  color:#111;
  padding:6px 10px;
  border-radius:999px;
  font-size:10px;
  font-weight:900;
  letter-spacing:1.2px;
}
.audit-popup-card h2{
  font-size:clamp(30px,5vw,46px);
  line-height:1.08;
  letter-spacing:-2px;
  margin:14px 0 10px;
}
.audit-popup-card p{color:#596566}
.popup-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:20px 0;
}
.popup-list span{
  border:1px solid #d8ded7;
  border-radius:12px;
  background:#fff;
  padding:10px;
  font-size:12px;
  font-weight:700;
}
.popup-highlight{
  background:#0b1f27;
  color:#fff;
  border-radius:12px;
  padding:11px 13px;
  text-align:center;
  font-size:12px;
  font-weight:800;
  margin-bottom:16px;
}
.audit-popup-card small{
  display:block;
  text-align:center;
  color:#6a7672;
  margin-top:10px;
}

@media(max-width:980px){
  .menu-btn{display:block}
  .nav-links{
    display:none;
    position:absolute;
    top:76px;
    left:4%;
    right:4%;
    background:#0d1d25;
    padding:18px;
    border:1px solid #28434d;
    border-radius:16px;
    flex-direction:column;
    align-items:stretch;
  }
  .nav-links.open{display:flex}
  .hero-grid,.intro-grid,.audit-shell,.process-shell,.faq-grid,.contact-grid{grid-template-columns:1fr}
  .service-grid,.testimonial-grid{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .contact-info-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
  .announcement-inner span{display:none}
  .hero{padding:74px 0}
  .hero h1{letter-spacing:-2.5px}
  .hero-proof,.service-grid,.testimonial-grid,.footer-grid{grid-template-columns:1fr}
  .mini-metrics{grid-template-columns:1fr}
  .audit-question{grid-template-columns:1fr}
  .toggle-group button{flex:1}
  .process-step{grid-template-columns:48px 1fr}
  .popup-list{grid-template-columns:1fr}
  .logo-pill{min-width:170px}
  .section,.contact-section,.audit-section{padding:72px 0}
  .floating-follow-wrap{left:14px;bottom:76px}
  .recent-toast{bottom:138px}
}


/* ===== RECENT ACTIVITY: SMALL BOTTOM-RIGHT TOAST ===== */
.recent-toast{
  left:auto !important;
  right:18px !important;
  transform:none !important;
  bottom:78px !important;
  min-width:0 !important;
  width:min(290px, calc(100vw - 36px)) !important;
  max-width:290px !important;
  padding:9px 11px !important;
  border-radius:11px !important;
  box-shadow:0 10px 30px rgba(0,0,0,.18) !important;
  border:1px solid #e3e7e2 !important;
  background:rgba(255,255,255,.97) !important;
}
.recent-toast strong{
  font-size:11px !important;
  line-height:1.35 !important;
}
.recent-toast span{
  font-size:10px !important;
  line-height:1.35 !important;
  margin-top:2px !important;
}
.logo-pill{
  min-width:230px;
  grid-auto-flow:column;
  grid-template-columns:auto 1fr;
  justify-content:start;
  gap:10px;
}
.logo-pill strong{
  font-size:13px;
  color:#314248;
}
.logo-placeholder-mark{
  width:44px;
  height:44px;
  border-radius:11px;
  display:grid;
  place-items:center;
  background:#eef3ef;
  border:1px dashed #bcc8bf;
  color:#819087;
  font-size:9px;
  font-weight:900;
}
.logo-pill.featured .logo-placeholder-mark{
  background:#fff2a8;
  border-color:#e1c231;
  color:#7a6200;
}
@media(max-width:680px){
  .recent-toast{
    right:12px !important;
    bottom:72px !important;
    width:min(260px, calc(100vw - 24px)) !important;
  }
}
