/* Root colours */
:root{--bg-color:#212121;--theme-color:#151515;--accent:#4fd1c5;}

/* Universal section padding */
.section{padding:clamp(90px,10vh,150px) 0;}
.hero-section{position:relative;height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;overflow:hidden;}
.video-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;}
.overlay-gradient{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,9,33,.7)0%,rgba(0,9,33,.9)100%);z-index:-1;}
.hero-center{max-width:900px;}

/* Marquee */
.main-marq .item h4{font-size:48px;text-transform:uppercase;color:#fff;opacity:.3;}

/* Services */
.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:40px;}
.service-card{background:rgba(255,255,255,.05);border-radius:16px;padding:40px;transition:.3s;}
.service-card:hover{transform:translateY(-6px);box-shadow:0 15px 30px rgba(0,0,0,.3);} 

/* Stats */
.stats-flex{display:flex;flex-wrap:wrap;gap:30px;justify-content:center;}
.stat{flex:1 1 180px;text-align:center;}
.stat-number{font-size:48px;font-weight:700;color:var(--accent);} 

/* Case card */
.case-card h3{padding:15px;font-size:20px;background:#000;}

/* Testimonials */
.testimonial-card{background:rgba(255,255,255,.05);border-radius:16px;padding:40px;}
.testimonial-card .author{display:flex;align-items:center;margin-top:20px;gap:15px;}
.testimonial-card img{width:60px;height:60px;border-radius:50%;object-fit:cover;}

/* Trust strip */
.trust-strip{background:#111;color:#fff;}
.trust-flex{display:flex;flex-wrap:wrap;justify-content:center;gap:30px;font-size:14px;padding:20px 0;text-transform:uppercase;letter-spacing:.5px;}

/* Floating Need Help button */
.live-support{position:fixed;bottom:25px;left:25px;background:var(--accent);color:#000;font-weight:600;padding:14px 20px;border-radius:30px;box-shadow:0 8px 20px rgba(0,0,0,.4);z-index:1000;transition:.3s;}
.live-support:hover{transform:translateY(-4px);} 

/* Progress bar / back-to-top */
.progress-wrap{width:44px;height:44px;display:flex;align-items:center;justify-content:center;}
/* suppress default arrow from ui-core */
.progress-wrap::after{content:none !important;}
/* custom centred arrow */
.progress-wrap::before{content:"\f062";font-family:"Font Awesome 5 Free";font-weight:900;font-size:14px;line-height:1;color:#fff;}

/* Hide inline arrow icon, use our pseudo instead */
.back-to-top i{display:none!important;}

/* During page load, keep normal flow so loader centers */
body:not(.loaded){display:block;}

/* Footer padding fix */
footer.site-footer{background:#0f0f0f;color:#ccc;padding:60px 0;}

/* Responsive */
@media(max-width:768px){.hero-title{font-size:42px;}}