/* ==========================================================================
   VENOVA IT — Core Stylesheet
   Design tokens: Primary #0F172A | Secondary #2563EB | Accent #06B6D4
                  Success #10B981 | BG #FFFFFF | Section BG #F8FAFC
   Type: Poppins (display) / Inter (body)
   ========================================================================== */

:root{
  --c-primary:#141110;
  --c-secondary:#D3212D;
  --c-accent:#F77F00;
  --c-heading:#F26101;
  --c-success:#16A34A;
  --c-bg:#FFFFFF;
  --c-bg-section:#FBF6F4;
  --c-text:#453F3C;
  --c-text-light:#726A66;
  --c-border:#EFE4E0;

  --gradient-brand: linear-gradient(135deg,#141110 0%,#3D0B0E 40%,#D3212D 75%,#F77F00 100%);
  --gradient-accent: linear-gradient(120deg,#D3212D 0%,#F77F00 100%);
  --gradient-mesh: radial-gradient(at 20% 20%, rgba(211,33,45,.35) 0px, transparent 50%),
                    radial-gradient(at 80% 0%, rgba(247,127,0,.30) 0px, transparent 50%),
                    radial-gradient(at 50% 100%, rgba(211,33,45,.18) 0px, transparent 50%);

  --radius-sm:10px;
  --radius-md:18px;
  --radius-lg:28px;
  --shadow-soft: 0 10px 40px -12px rgba(15,23,42,.12);
  --shadow-card: 0 4px 24px rgba(15,23,42,.06);
  --shadow-hover: 0 20px 50px -16px rgba(211,33,45,.28);
  --font-display:'Poppins', sans-serif;
  --font-body:'Inter', sans-serif;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:var(--font-body);
  color:var(--c-text);
  background:var(--c-bg);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-display);
    color: color(srgb 0.828 0.1322 0.1742) !important;
    font-weight: 600;
    letter-spacing: -0.02em;
}

a{text-decoration:none; color:inherit;}
img{max-width:100%; height:auto;}
::selection{background:var(--c-accent); color:#fff;}

@media (prefers-reduced-motion: reduce){
  *{animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important;}
}

/* ---------- Utility ---------- */
.section{padding:100px 0;}
.section-alt{background:var(--c-bg-section);}
.eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  font-size:.78rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase;
  color:var(--c-secondary); background:rgba(211,33,45,.08);
  padding:7px 16px; border-radius:50px; margin-bottom:18px;
}
.eyebrow::before{content:''; width:6px; height:6px; border-radius:50%; background:var(--c-accent); display:inline-block;}
.section-title{font-size:clamp(1.9rem,3.2vw,2.7rem); margin-bottom:16px;}
.section-sub{color:var(--c-text-light); font-size:1.05rem; max-width:640px;}
.text-gradient{background:var(--gradient-accent); -webkit-background-clip:text; background-clip:text; color:transparent;}

.btn{font-family:var(--font-display); font-weight:500; border-radius:50px; padding:13px 32px; font-size:.95rem; transition:.35s cubic-bezier(.2,.8,.2,1); border:none; display:inline-flex; align-items:center; gap:10px;}
.btn-primary-grad{background:var(--gradient-accent); color:#fff; box-shadow:0 10px 25px -8px rgba(211,33,45,.55);}
.btn-primary-grad:hover{transform:translateY(-3px); box-shadow:0 16px 34px -8px rgba(211,33,45,.6); color:#fff;}
.btn-outline-light{border:1.5px solid rgba(255,255,255,.5); color:#fff; background:transparent;}
.btn-outline-light:hover{background:#fff; color:var(--c-primary); transform:translateY(-3px);}
.btn-outline-dark{border:1.5px solid var(--c-border); color:var(--c-primary); background:#fff;}
.btn-outline-dark:hover{border-color:var(--c-secondary); color:var(--c-secondary); transform:translateY(-3px);}

/* ---------- Preloader ---------- */
#loader{position:fixed; inset:0; z-index:9999; background:var(--c-primary); display:flex; align-items:center; justify-content:center; transition:opacity .5s ease, visibility .5s ease;}
#loader.loaded{opacity:0; visibility:hidden;}
.loader-mark{width:56px; height:56px; border-radius:50%; border:3px solid rgba(255,255,255,.15); border-top-color:var(--c-accent); animation:spin .9s linear infinite;}
@keyframes spin{to{transform:rotate(360deg);}}

/* ---------- Scroll progress ---------- */
#scroll-progress{position:fixed; top:0; left:0; height:3px; background:var(--gradient-accent); z-index:2000; width:0%;}

/* ---------- Navbar ---------- */
.navbar{padding:20px 0; transition:.4s ease; z-index:1000;}
.navbar.nav-solid{background:rgba(255,255,255,.92); backdrop-filter:blur(14px); box-shadow:0 4px 24px rgba(15,23,42,.06); padding:14px 0;}
.navbar-brand-text{font-family:var(--font-display); font-weight:700; font-size:1.5rem; color:#fff;}
.navbar.nav-solid .navbar-brand-text{color:var(--c-primary);}
.navbar-brand-text span{color:var(--c-accent);}
.brand-logo{height:34px; width:auto; max-width:none; transition:.3s; display:block; filter:drop-shadow(0 2px 6px rgba(0,0,0,.45));}
footer.site-footer .brand-logo{height:28px;}
@media (max-width:400px){.brand-logo{height:28px;}}
.nav-link{font-family:var(--font-display); font-weight:500; font-size:.94rem; color:rgba(255,255,255,.88) !important; margin:0 14px; position:relative; padding:8px 0 !important;}
.navbar.nav-solid .nav-link{color:var(--c-primary) !important;}
.nav-link::after{content:''; position:absolute; left:0; bottom:0; width:0; height:2px; background:var(--gradient-accent); transition:.3s;}
.nav-link:hover::after, .nav-link.active::after{width:100%;}
.nav-link.active{color:var(--c-accent) !important;}
.navbar .btn-nav-cta{background:var(--gradient-accent); color:#fff; padding:10px 26px; border-radius:50px; font-size:.9rem; font-weight:600;}
.navbar-toggler{border:none; box-shadow:none !important;}
.navbar-toggler .fa-bars{color:#fff; font-size:1.4rem;}
.navbar.nav-solid .navbar-toggler .fa-bars{color:var(--c-primary);}

/* ---------- Hero ---------- */
.hero{
  min-height:100vh; position:relative; display:flex; align-items:center;
  background:var(--gradient-brand); overflow:hidden; padding-top:100px;
}
.hero::before{content:''; position:absolute; inset:0; background:var(--gradient-mesh); z-index:1; pointer-events:none;}
.hero-shape{position:absolute; border-radius:50%; filter:blur(2px); opacity:.5; animation:float 8s ease-in-out infinite; z-index:2;}
.hero-shape.s1{width:120px; height:120px; border:1px solid rgba(255,255,255,.25); top:18%; left:8%; animation-delay:0s;}
.hero-shape.s2{width:70px; height:70px; background:rgba(247,127,0,.25); top:65%; left:14%; animation-delay:1.2s;}
.hero-shape.s3{width:180px; height:180px; border:1px solid rgba(255,255,255,.15); top:12%; right:8%; animation-delay:.6s;}
.hero-shape.s4{width:16px; height:16px; background:var(--c-accent); top:50%; right:20%; animation-delay:2s;}
@keyframes float{0%,100%{transform:translateY(0) translateX(0);}50%{transform:translateY(-24px) translateX(10px);}}

/* Hero image slider */
.hero-slider{background:var(--c-primary);}
.hero-swiper{position:absolute; inset:0; z-index:0; overflow:hidden;}
.hero-swiper .swiper-wrapper{position:relative; width:100%; height:100%;}
/* Self-sufficient positioning: slides stack on top of each other regardless of
   whether the external Swiper stylesheet loads, so a stale cache or blocked
   CDN request never breaks the layout — it just disables the crossfade. */
.hero-swiper .swiper-slide{position:absolute !important; inset:0; width:100%; height:100%; opacity:0; transform:none !important; transition:opacity 1.2s ease;}
.hero-swiper .swiper-slide:first-child{opacity:1;}
.hero-swiper .swiper-slide-active{opacity:1 !important; z-index:1;}
.hero-swiper .swiper-slide img{width:100%; height:100%; object-fit:cover; display:block; filter:saturate(1.05);}
.hero-overlay{position:absolute; inset:0; z-index:1; background:
linear-gradient(to bottom right, rgba(118, 115, 113, 0.92), rgba(61, 11, 14, 0.82) 40%, rgba(211, 33, 45, 0.72) 75%, rgba(247, 127, 0, 0.62));}
.hero-swiper-pagination{position:absolute; bottom:34px; right:40px; z-index:3; display:flex; gap:8px;}
.hero-swiper-pagination .swiper-pagination-bullet{width:9px; height:9px; background:rgba(255,255,255,.4); opacity:1; border-radius:50%; transition:.3s; cursor:pointer;}
.hero-swiper-pagination .swiper-pagination-bullet-active{background:var(--c-accent); width:26px; border-radius:5px;}
@media (max-width:767px){.hero-swiper-pagination{right:50%; transform:translateX(50%); bottom:20px;}}

.hero-content{position:relative; z-index:2;}
.hero-badge{display:inline-flex; align-items:center; gap:10px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.16); backdrop-filter:blur(10px); padding:8px 20px; border-radius:50px; color:#F1E9E7; font-size:.85rem; margin-bottom:26px;}
.hero-badge .dot{width:8px; height:8px; border-radius:50%; background:var(--c-success); box-shadow:0 0 0 4px rgba(16,185,129,.25);}
.hero h1{color:#fff !important; font-size:clamp(2.3rem,5vw,3.9rem); line-height:1.12; margin-bottom:22px;}
.hero h1 .cursor-word{color:color(display-p3 0.9058 0.5215 0.1921);}
.hero p.lead{color:#EADFDC; font-size:1.15rem; max-width:640px; margin-bottom:34px;}
.hero-stats{display:flex; gap:38px; margin-top:56px; flex-wrap:wrap;}
.hero-stats .stat b{color:#fff; font-family:var(--font-display); font-size:1.9rem; display:block;}
.hero-stats .stat span{color:#D9C9C5; font-size:.85rem;}
.hero-visual{position:relative; z-index:2;}
.hero-glass-card{background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.18); backdrop-filter:blur(18px); border-radius:var(--radius-lg); padding:28px; position:relative;}
.hero-glass-card img{border-radius:var(--radius-md);}
.floating-chip{position:absolute; background:#fff; border-radius:var(--radius-sm); box-shadow:var(--shadow-soft); padding:14px 18px; display:flex; align-items:center; gap:12px; animation:float 6s ease-in-out infinite;}
.floating-chip i{width:38px; height:38px; border-radius:10px; display:flex; align-items:center; justify-content:center; color:#fff; font-size:1rem;}
.chip-1{top:-24px; right:-20px; animation-delay:.3s;}
.chip-1 i{background:var(--gradient-accent);}
.chip-2{bottom:20px; left:-30px; animation-delay:1s;}
.chip-2 i{background:var(--c-success);}
.scroll-cue{position:absolute; bottom:34px; left:50%; transform:translateX(-50%); color:rgba(255,255,255,.65); font-size:.78rem; text-align:center; z-index:2;}
.scroll-cue .line{width:1px; height:36px; background:rgba(255,255,255,.35); margin:8px auto 0; position:relative; overflow:hidden;}
.scroll-cue .line::after{content:''; position:absolute; top:-100%; left:0; width:100%; height:100%; background:var(--c-accent); animation:scrollLine 2s ease-in-out infinite;}
@keyframes scrollLine{50%{top:100%;}100%{top:100%;}}

/* ---------- Logo strip ---------- */
.logo-strip{padding:50px 0; border-bottom:1px solid var(--c-border);}
.logo-strip p{text-align:center; font-size:.82rem; letter-spacing:.12em; text-transform:uppercase; color:var(--c-text-light); margin-bottom:30px;}
.swiper-logos .logo-slide{display:flex; align-items:center; justify-content:center; filter:grayscale(1); opacity:.55; transition:.3s;}
.swiper-logos .logo-slide:hover{filter:grayscale(0); opacity:1;}
.logo-slide .logo-box{font-family:var(--font-display); font-weight:700; font-size:1.15rem; color:var(--c-primary); border:1px solid var(--c-border); padding:14px 26px; border-radius:var(--radius-sm); white-space:nowrap;}

/* ---------- Cards ---------- */
.card-lift{background:#fff; border:1px solid var(--c-border); border-radius:var(--radius-md); transition:.4s cubic-bezier(.2,.8,.2,1); box-shadow:var(--shadow-card);}
.card-lift:hover{transform:translateY(-8px); box-shadow:var(--shadow-hover); border-color:transparent;}

.service-card{padding:40px 30px; height:100%; position:relative; overflow:hidden;}
.service-card .icon-box{width:62px; height:62px; border-radius:16px; background:var(--gradient-accent); display:flex; align-items:center; justify-content:center; font-size:1.5rem; color:#fff; margin-bottom:22px; transition:.4s;}
.service-card:hover .icon-box{transform:rotate(-8deg) scale(1.05);}
.service-card h3{font-size:1.2rem; margin-bottom:10px;}
.service-card p{color:var(--c-text-light); font-size:.93rem; margin-bottom:0;}
.service-card .learn-more{font-size:.85rem; font-weight:600; color:var(--c-secondary); margin-top:16px; display:inline-flex; align-items:center; gap:6px; opacity:0; transform:translateX(-6px); transition:.3s;}
.service-card:hover .learn-more{opacity:1; transform:translateX(0);}

.about-value{padding:26px; text-align:left;}
.about-value .num{font-family:var(--font-display); font-weight:700; font-size:1.6rem; color:var(--c-accent); opacity:.4;}

.why-card{padding:34px 26px; text-align:center;}
.why-card i{font-size:1.8rem; background:var(--gradient-accent); -webkit-background-clip:text; background-clip:text; color:transparent; margin-bottom:16px; display:inline-block;}
.why-card h4{font-size:1.02rem; margin-bottom:8px;}
.why-card p{font-size:.87rem; color:var(--c-text-light); margin-bottom:0;}

.industry-card{position:relative; border-radius:var(--radius-md); overflow:hidden; height:280px; display:flex; align-items:flex-end; padding:26px; color:#fff; background-size:cover; background-position:center;}
.industry-card::before{content:''; position:absolute; inset:0; background:linear-gradient(0deg, rgba(15,23,42,.92) 10%, rgba(15,23,42,.15) 80%);}
.industry-card .content{position:relative; z-index:2;}
.industry-card i{font-size:1.4rem; color:var(--c-accent); margin-bottom:10px;}
.industry-card h4{color:#fff; font-size:1.1rem; margin-bottom:4px;}
.industry-card p{color:#CBD5E1; font-size:.82rem; margin-bottom:0; max-height:0; overflow:hidden; transition:.4s;}
.industry-card:hover p{max-height:80px;}

.tech-pill{display:inline-flex; align-items:center; gap:10px; padding:12px 22px; border-radius:50px; border:1px solid var(--c-border); background:#fff; font-family:var(--font-display); font-weight:500; font-size:.9rem; transition:.3s;}
.tech-pill:hover{border-color:var(--c-secondary); background:rgba(211,33,45,.05); transform:translateY(-3px);}
.tech-pill i{color:var(--c-secondary);}

.client-logo-chip{padding:34px 18px; min-height:110px; transition:.35s;}
.client-logo-chip span{font-family:var(--font-display); font-weight:700; font-size:1.15rem; letter-spacing:.02em; color:var(--c-primary); text-align:center;}
.client-logo-chip:hover{filter:grayscale(0); opacity:1; border-color:transparent;}
.client-logo-chip:hover span{color:var(--c-secondary);}

/* ---------- Process ---------- */
.process-track{position:relative;}
.process-track::before{content:''; position:absolute; top:34px; left:0; right:0; height:2px; background:var(--c-border);}
.process-step{position:relative; text-align:center; padding-top:0;}
.process-step .step-circle{width:70px; height:70px; border-radius:50%; background:#fff; border:2px solid var(--c-border); display:flex; align-items:center; justify-content:center; margin:0 auto 20px; font-family:var(--font-display); font-weight:700; color:var(--c-secondary); position:relative; z-index:2; transition:.3s;}
.process-step:hover .step-circle{background:var(--gradient-accent); color:#fff; border-color:transparent;}
.process-step h4{font-size:.98rem; margin-bottom:6px;}
.process-step p{font-size:.82rem; color:var(--c-text-light);}

/* ---------- Stats band ---------- */
.stats-band{background:var(--gradient-brand); position:relative; overflow:hidden;}
.stats-band::before{content:''; position:absolute; inset:0; background:var(--gradient-mesh);}
.stat-item{text-align:center; position:relative; z-index:2;}
.stat-item .count{font-family:var(--font-display); font-weight:700; font-size:clamp(2.2rem,4vw,3.2rem); color:#fff;}
.stat-item .label{color:#94A3B8; font-size:.88rem; letter-spacing:.04em;}

/* ---------- Testimonials ---------- */
.testimonial-card{padding:38px; height:100%;}
.testimonial-card .stars{color:#F59E0B; font-size:.85rem; margin-bottom:16px;}
.testimonial-card p.quote{font-size:1rem; color:var(--c-text); font-style:italic; margin-bottom:22px;}
.testimonial-card .author{display:flex; align-items:center; gap:14px;}
.testimonial-card .avatar{width:46px; height:46px; border-radius:50%; background:var(--gradient-accent); display:flex; align-items:center; justify-content:center; color:#fff; font-weight:700; font-family:var(--font-display);}
.testimonial-card .author b{display:block; font-size:.92rem; color:var(--c-primary);}
.testimonial-card .author span{font-size:.78rem; color:var(--c-text-light);}

/* ---------- CTA band ---------- */
.cta-band{background:var(--gradient-brand); border-radius:var(--radius-lg); padding:70px 50px; position:relative; overflow:hidden; margin:0 auto;}
.cta-band::before{content:''; position:absolute; inset:0; background:var(--gradient-mesh);}
.cta-band h2{color:#fff; position:relative; z-index:2;}
.cta-band p{color:#CBD5E1; position:relative; z-index:2;}
.cta-band .cta-actions{position:relative; z-index:2;}

/* ---------- FAQ ---------- */
.accordion-item{border:1px solid var(--c-border) !important; border-radius:var(--radius-sm) !important; margin-bottom:14px; overflow:hidden;}
.accordion-button{font-family:var(--font-display); font-weight:600; font-size:.98rem; color:var(--c-primary); background:#fff;}
.accordion-button:not(.collapsed){color:var(--c-secondary); background:rgba(211,33,45,.04); box-shadow:none;}
.accordion-button:focus{box-shadow:none;}
.accordion-button::after{filter:none;}

/* ---------- Blog preview ---------- */
.blog-card{overflow:hidden;}
.blog-card .thumb{height:200px; overflow:hidden;}
.blog-card .thumb img{width:100%; height:100%; object-fit:cover; transition:.5s;}
.blog-card:hover .thumb img{transform:scale(1.08);}
.blog-card .body{padding:26px;}
.blog-card .meta{font-size:.78rem; color:black; margin-bottom:10px;}
.blog-card h5{font-size:1.05rem; margin-bottom:10px;}

/* ---------- Footer ---------- */
footer.site-footer{background:rgba(0, 0, 0, 0.84); color:#94A3B8; padding-top:80px;}
footer.site-footer h5{color:#fff; font-size:1rem; margin-bottom:22px;}
footer.site-footer a{color:#94A3B8; font-size:.9rem; transition:.25s;}
footer.site-footer a:hover{color:var(--c-accent);}
footer.site-footer .footer-links li{margin-bottom:12px;}
footer.site-footer .footer-links li i{width:16px; color:var(--c-accent); font-size:.9rem;}
footer.site-footer .footer-links li span, footer.site-footer .footer-links li a{font-size:.87rem; line-height:1.55;}
footer.site-footer .social-icon{width:38px; height:38px; border-radius:50%; border:1px solid rgba(255,255,255,.15); display:inline-flex; align-items:center; justify-content:center; margin-right:8px;}
footer.site-footer .social-icon:hover{background:var(--gradient-accent); border-color:transparent; color:#fff;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08); margin-top:60px; padding:24px 0; font-size:.82rem;}
.newsletter-form input{background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.15); color:#fff; border-radius:50px 0 0 50px; padding:12px 20px;}
.newsletter-form input:focus{box-shadow:none; background:rgba(255,255,255,.08); border-color:var(--c-accent); color:#fff;}
.newsletter-form input::placeholder{color:#64748B;}
.newsletter-form button{border-radius:0 50px 50px 0; background:var(--gradient-accent); color:#fff; border:none; padding:0 22px;}
/* ---------- Floating buttons ---------- */
.float-btn{position:fixed; right:26px; width:54px; height:54px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-size:1.3rem; z-index:900; box-shadow:var(--shadow-soft); transition:.3s;}
.float-whatsapp{bottom:96px; background:#25D366;}
.float-call{bottom:26px; background:var(--gradient-accent);}
.float-btn:hover{transform:scale(1.1); color:#fff;}
#backToTop{position:fixed; left:26px; bottom:26px; width:48px; height:48px; border-radius:50%; background:var(--c-primary); color:#fff; display:flex; align-items:center; justify-content:center; z-index:900; opacity:0; visibility:hidden; transition:.35s;}
#backToTop.show{opacity:1; visibility:visible;}

/* ---------- Page hero (inner pages) ---------- */
.page-hero{background:var(--gradient-brand); padding:180px 0 100px; position:relative; overflow:hidden;}
.page-hero::before{content:''; position:absolute; inset:0; background:var(--gradient-mesh);}
.page-hero .content{position:relative; z-index:2;}
.page-hero h1{color:#fff !important; font-size:clamp(2rem,4vw,3rem);}
.breadcrumb-nav{color:#94A3B8; font-size:.9rem;}
.breadcrumb-nav a{color:#CBD5E1;}
.breadcrumb-nav a:hover{color:var(--c-accent);}

/* ---------- Contact ---------- */
.contact-info-card{background:var(--gradient-brand); border-radius:var(--radius-lg); padding:50px 40px; color:#fff; position:relative; overflow:hidden; height:100%;}
.contact-info-card::before{content:''; position:absolute; inset:0; background:var(--gradient-mesh);}
.contact-info-card .item{position:relative; z-index:2; display:flex; gap:16px; margin-bottom:28px;}
.contact-info-card .item i{width:44px; height:44px; border-radius:12px; background:rgba(255,255,255,.1); display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.contact-info-card .item h6{color:#fff; font-size:.92rem; margin-bottom:4px;}
.contact-info-card .item p{color:#CBD5E1; font-size:.87rem; margin-bottom:0;}
.contact-form-card{background:#fff; border-radius:var(--radius-lg); padding:46px; box-shadow:var(--shadow-soft); border:1px solid var(--c-border);}
.form-control, .form-select{border:1px solid var(--c-border); border-radius:var(--radius-sm); padding:13px 18px; font-size:.93rem;}
.form-control:focus, .form-select:focus{border-color:var(--c-secondary); box-shadow:0 0 0 4px rgba(211,33,45,.1);}
.form-label{font-size:.85rem; font-weight:600; color:var(--c-primary); margin-bottom:6px;}
.map-wrap{border-radius:var(--radius-md); overflow:hidden; height:280px; margin-top:24px; filter:grayscale(.2);}

/* ---------- 404 ---------- */
.error-page{min-height:100vh; display:flex; align-items:center; background:var(--gradient-brand); position:relative; overflow:hidden;}
.error-page::before{content:''; position:absolute; inset:0; background:var(--gradient-mesh);}
.error-page .code{font-family:var(--font-display); font-weight:700; font-size:clamp(6rem,14vw,10rem); color:#fff; line-height:1; opacity:.9;}
.error-page h2{color:#fff;}
.error-page p{color:#CBD5E1;}

/* ---------- AOS-safe fallback ---------- */
[data-aos]{transition-property:transform, opacity;}

/* ---------- Responsive ---------- */
@media (max-width:767px){
  .process-track::before{display:none;}
  .process-track{row-gap:34px !important;}
  .process-track .process-step{flex:0 0 50%; max-width:50%;}
}
@media (max-width:991px){
  .section{padding:70px 0;}
  .hero{padding-top:120px; min-height:auto; padding-bottom:80px;}
  .hero-stats{gap:24px; margin-top:40px;}
  .navbar-collapse{background:#fff; margin-top:14px; padding:20px; border-radius:var(--radius-md); box-shadow:var(--shadow-card);}
  .navbar-collapse .nav-link{color:var(--c-primary) !important;}
  .cta-band{padding:50px 26px; text-align:center;}
  .float-btn{width:48px; height:48px; font-size:1.1rem; right:16px;}
  .float-whatsapp{bottom:86px;}
  #backToTop{left:16px;}
}
@media (max-width:576px){
  .hero-stats{justify-content:space-between; width:100%;}
  .contact-form-card{padding:28px;}
}
