
/* ===== HP4 DESIGN SYSTEM ===== */
.hp4{font-family:'DM Sans',sans-serif;color:var(--color-text-primary);font-feature-settings:"kern" 1,"liga" 1}
.hp4 h1,.hp4 h2,.hp4 h3,.hp4 h4{font-family:'Plus Jakarta Sans',sans-serif;font-feature-settings:"kern" 1,"liga" 1}
.hp4 h1{font-size:52px;font-weight:800;line-height:1.12;letter-spacing:-0.02em;text-wrap:balance}
.hp4 h2{font-size:40px;font-weight:700;line-height:1.18;letter-spacing:-0.01em;text-wrap:balance}
.hp4 h3{font-size:24px;font-weight:600;line-height:1.3}
.hp4 p,.hp4 li{font-size:17px;line-height:1.7;color:var(--color-text-secondary)}

/* Container */
.hp4 .container{max-width:1200px;margin:0 auto;padding:0 24px}
.hp4 .container-narrow{max-width:800px;margin:0 auto;padding:0 24px}
/* Hero only: a bit wider + reliable 2-col fill (grid 1fr eats all slack next to copy) */
.hp4 .hp4-hero-container{max-width:min(1320px,100%);width:100%;box-sizing:border-box;margin-left:auto;margin-right:auto;padding:0 0 0 clamp(16px,4vw,32px)}

/* Section pattern */
.hp4 .section{padding:100px 0}
.hp4 .section-header{text-align:center;margin-bottom:64px}
.hp4 .section-badge{display:inline-block;background:var(--color-accent-soft);color:var(--color-accent-primary);padding:6px 16px;border-radius:50px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:16px}
.hp4 .section-badge-dark{background:var(--color-bg-dark-card);color:#fff}
.hp4 .section-subtitle{font-size:17px;color:var(--color-text-secondary);max-width:700px;margin:16px auto 0;line-height:1.7}
.hp4 .bg-white{background:var(--color-bg-primary)}
.hp4 .bg-gray{background:var(--color-bg-secondary)}
.hp4 .bg-dark{background:var(--color-bg-dark);color:var(--color-text-on-dark)}
.hp4 .bg-dark h2,.hp4 .bg-dark h3{color:#fff}
.hp4 .bg-dark p,.hp4 .bg-dark li{color:var(--color-text-muted)}

/* Background textures */
.hp4 .bg-white-textured{background:var(--color-bg-primary);background-image:url("data:image/svg+xml,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='1' cy='1' r='1' fill='%230f172a' fill-opacity='0.03'/%3E%3C/svg%3E")}
.hp4 .bg-gray-textured{background:var(--color-bg-secondary);background-image:radial-gradient(ellipse at 50% 0%,rgba(37,99,235,.03) 0%,transparent 70%)}
.hp4 .bg-dark-textured{background:var(--color-bg-dark);color:var(--color-text-on-dark);background-image:radial-gradient(ellipse at 20% 50%,rgba(37,99,235,.08) 0%,transparent 50%),radial-gradient(ellipse at 80% 50%,rgba(16,185,129,.06) 0%,transparent 50%)}
.hp4 .bg-dark-textured h2,.hp4 .bg-dark-textured h3{color:#fff}
.hp4 .bg-dark-textured p,.hp4 .bg-dark-textured li{color:var(--color-text-muted)}

/* Buttons */
.hp4 .btn-primary{display:inline-flex;align-items:center;justify-content:center;background:var(--color-accent-primary);color:#fff;padding:14px 32px;border-radius:50px;font-weight:600;font-size:15px;line-height:1;text-decoration:none;border:2px solid var(--color-accent-primary);box-sizing:border-box;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer}
.hp4 .btn-primary:hover{background:var(--color-accent-primary-hover);border-color:var(--color-accent-primary-hover);transform:translateY(-2px);box-shadow:0 8px 24px rgba(37,99,235,.3)}
.hp4 .btn-secondary{display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--color-accent-primary);padding:14px 32px;border-radius:50px;font-weight:600;font-size:15px;line-height:1;text-decoration:none;border:2px solid var(--color-accent-primary);box-sizing:border-box;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer}
.hp4 .btn-secondary:hover{background:var(--color-accent-primary);color:#fff;transform:translateY(-2px)}
.hp4 .btn-ghost{color:var(--color-accent-primary);font-weight:600;font-size:14px;text-decoration:none;display:inline-flex;align-items:center;gap:6px;background-image:linear-gradient(var(--color-accent-primary),var(--color-accent-primary));background-size:0% 1px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .3s,color .2s}
.hp4 .btn-ghost:hover{background-size:100% 1px}
.hp4 .btn-ghost .arrow{transition:transform .2s}
.hp4 .btn-ghost:hover .arrow{transform:translateX(4px)}
.hp4 .chip-link{display:inline-flex;align-items:center;gap:10px;border:2px solid var(--color-accent-primary);color:var(--color-text-primary);padding:8px 20px 8px 8px;border-radius:50px;font-size:14px;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);background:#fff;font-family:'DM Sans',sans-serif}
.hp4 .chip-link:hover{background:var(--color-accent-primary);color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px rgba(37,99,235,.25)}
.hp4 .chip-link .chip-icon{width:32px;height:32px;border-radius:50%;background:var(--color-accent-soft);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .3s}
.hp4 .chip-link:hover .chip-icon{background:rgba(255,255,255)}
.hp4 .chip-link img{height:18px}

/* Cards */
.hp4 .card{background:#fff;border-radius:16px;padding:36px;box-shadow:0 1px 3px rgba(0,0,0,.04),0 6px 24px rgba(0,0,0,.06);transition:all .4s cubic-bezier(.22,1,.36,1);border-top:3px solid transparent}
.hp4 .card:hover{transform:translateY(-6px);border-radius:16px;box-shadow:0 16px 48px rgba(0,0,0,.12);border-top:3px solid var(--color-accent-primary);}
.hp4 .card-bordered{border:1px solid var(--color-border);box-shadow:none;border-top:1px solid var(--color-border)}
.hp4 .card-bordered:hover{border-color:var(--color-accent-primary);box-shadow:0 12px 40px rgba(0,0,0,.1);border-top:3px solid var(--color-accent-primary);}

/* Why Choose Us - sticky nav + scrollable cards */
.hp4 .hp4-why-nav{position:sticky;top:76px;align-self:flex-start}
.hp4 .hp4-why-btn{font-size:15px;font-weight:600;color:var(--color-text-primary);padding:14px 18px;transition:all .25s}
.hp4 .hp4-why-btn:hover{background:var(--color-bg-secondary);border-left-color:var(--color-border)}
.hp4 .hp4-why-btn:hover span:last-child{color:var(--color-accent-primary)}
.hp4 .hp4-why-btn.active{border-left-color:var(--color-accent-primary);background:var(--color-accent-soft)}
.hp4 .hp4-why-btn.active span:first-child{color:var(--color-accent-primary)}
.hp4 .hp4-why-btn.active span:last-child{color:var(--color-accent-primary);font-weight:700;font-size:16px}
.hp4 .hp4-why-card{background:var(--color-bg-secondary);border-radius:16px;padding:36px;margin-bottom:16px;transition:all .3s}

/* Services - sticky nav + stacked cards */
.hp4 .hp4-svc-btn{font-size:19px;font-weight:600;color:var(--color-text-secondary);padding:18px 22px;border-left:3px solid transparent;transition:all .25s}
.hp4 .hp4-svc-btn:hover{background:var(--color-bg-secondary);color:var(--color-text-primary);border-left-color:var(--color-border)}
.hp4 .hp4-svc-btn.active{border-left-color:var(--color-accent-primary);background:var(--color-accent-soft);color:var(--color-accent-primary);font-weight:800;font-size:22px}
.hp4 .hp4-svc-btn.active span{transform:translateX(6px);color:var(--color-accent-primary);font-size:18px}

/* Industries - sticky nav + stacked cards */
.hp4 .hp4-ind-btn{font-size:19px;font-weight:600;color:var(--color-text-secondary);padding:18px 22px;border-left:3px solid transparent;transition:all .25s}
.hp4 .hp4-ind-btn:hover{background:var(--color-bg-secondary);color:var(--color-text-primary);border-left-color:var(--color-border)}
.hp4 .hp4-ind-btn.active{border-left-color:var(--color-accent-primary);background:var(--color-accent-soft);color:var(--color-accent-primary);font-weight:800;font-size:22px}
.hp4 .hp4-ind-btn.active span{transform:translateX(6px);color:var(--color-accent-primary);font-size:18px}

/* Engagement models - sticky nav + stacked cards */
.hp4 .hp4-eng-btn{font-size:19px;font-weight:600;color:var(--color-text-secondary);padding:18px 22px;border-left:3px solid transparent;transition:all .25s}
.hp4 .hp4-eng-btn:hover{background:var(--color-bg-secondary);color:var(--color-text-primary);border-left-color:var(--color-border)}
.hp4 .hp4-eng-btn.active{border-left-color:var(--color-accent-primary);background:var(--color-accent-soft);color:var(--color-accent-primary);font-weight:800;font-size:22px}
.hp4 .hp4-eng-btn.active span{transform:translateX(6px);color:var(--color-accent-primary);font-size:18px}

/* Tabs */
.hp4 .tab-bar{display:flex;justify-content:center;gap:0;border-bottom:2px solid var(--color-border);overflow-x:auto;-webkit-overflow-scrolling:touch}
.hp4 .tab-btn{padding:12px 24px;font-weight:600;font-size:15px;color:var(--color-text-secondary);background:none;border:none;border-bottom:3px solid transparent;margin-bottom:-2px;cursor:pointer;white-space:nowrap;transition:color .2s,border-color .2s;font-family:'DM Sans',sans-serif}
.hp4 .tab-btn:hover{color:var(--color-text-primary)}
.hp4 .tab-btn.active{color:var(--color-accent-primary);border-bottom-color:var(--color-accent-primary)}
.hp4 .tab-panel{display:none;opacity:0;transition:opacity .3s}
.hp4 .tab-panel.active{display:block;opacity:1}


/* Checkmark */
.hp4 .check-icon{width:20px;height:20px;border-radius:50%;background:var(--color-accent-secondary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.hp4 .check-icon svg{width:12px;height:12px;color:#fff}

/* FAQ */
.hp4 .faq-item{background:#fff;border:1px solid var(--color-border);border-radius:12px;margin-bottom:12px;overflow:hidden}
.hp4 .faq-question{padding:24px;font-weight:600;font-size:17px;color:var(--color-text-primary);cursor:pointer;display:flex;justify-content:space-between;align-items:center;background:none;border:none;width:100%;text-align:left;font-family:'DM Sans',sans-serif}
.hp4 .faq-question:hover{color:var(--color-accent-primary)}
.hp4 .faq-chevron{transition:transform .3s;flex-shrink:0;margin-left:16px}
.hp4 .faq-item.open .faq-chevron{transform:rotate(180deg)}
.hp4 .faq-answer{max-height:0;overflow:hidden;transition:max-height .4s ease}
.hp4 .faq-answer-inner{padding:0 24px 24px;font-size:16px;color:var(--color-text-secondary);line-height:1.7}

/* Timeline */
.hp4 .timeline{display:flex;justify-content:space-between;position:relative}
.hp4 .timeline::before{content:'';position:absolute;top:24px;left:48px;right:48px;height:2px;background:var(--color-border)}
.hp4 .timeline-step{flex:1;text-align:center;position:relative;z-index:1}
.hp4 .timeline-circle{width:48px;height:48px;border-radius:50%;background:var(--color-accent-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;margin:0 auto 20px;font-family:'Plus Jakarta Sans',sans-serif}

/* Sticky CTA */
.hp4 .sticky-cta{position:fixed;bottom:0;left:0;right:0;height:60px;background:#fff;border-top:1px solid var(--color-border);box-shadow:0 -4px 12px rgba(0,0,0,.06);z-index:999;transform:translateY(100%);transition:transform .3s ease;display:flex;align-items:center}
.hp4 .sticky-cta.visible{transform:translateY(0)}
.hp4 .sticky-cta-actions{display:flex;align-items:center;gap:12px;margin-left:auto}
.hp4 .sticky-cta .btn-primary,.hp4 .sticky-cta .btn-secondary{padding:0 24px;min-height:40px;font-size:14px;line-height:1;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box}

/* Cookie banner */
.hp4 .cookie-bar{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--color-bg-dark);color:var(--color-text-on-dark);padding:16px 24px;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;font-size:14px;transition:transform .4s}
.hp4 .cookie-bar.dismissed{transform:translateY(100%);pointer-events:none}

/* Back to top */
.hp4 .back-top{position:fixed;bottom:90px;right:32px;z-index:998;width:48px;height:48px;border-radius:50%;background:var(--color-accent-primary);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(37,99,235,.3);opacity:0;transform:translateY(16px);transition:opacity .3s,transform .3s,background .2s;pointer-events:none}
.hp4 .back-top.visible{opacity:1;transform:translateY(0);pointer-events:auto}
.hp4 .back-top:hover{background:var(--color-accent-primary-hover)}

/* Scroll progress bar */
.hp4 .scroll-progress{position:fixed;top:0;left:0;height:3px;background:var(--color-accent-primary);z-index:1001;width:0;transition:width .1s linear}

/* Scroll animations */
.hp4 [data-animate]{opacity:0;transform:translateY(40px);transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.4,0,.2,1)}
.hp4 [data-animate].in-view{opacity:1;transform:translateY(0)}

/* Hero fade-up */
@keyframes hp4FadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
.hp4 .hero-anim{opacity:0;animation:hp4FadeUp .6s cubic-bezier(.4,0,.2,1) forwards}

/* Stats */
.hp4 .stat-number{font-size:48px;font-weight:800;color:var(--color-text-primary);font-family:'Plus Jakarta Sans',sans-serif}

/* Testimonial card */
.hp4 .testimonial-card{background:#fff;border-radius:16px;padding:32px;border:1px solid var(--color-border-light);height:100%;display:flex;flex-direction:column}

/* Video card */
.hp4 .video-card{background:var(--color-bg-dark-card);border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.06);transition:all .35s cubic-bezier(.22,1,.36,1)}
.hp4 .video-card:hover{transform:translateY(-6px);border-color:rgba(255,255,255,.15);box-shadow:0 24px 48px rgba(0,0,0,.4)}
.hp4 .video-thumb{height:200px;background:#334155;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.hp4 .play-btn{width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.95);display:flex;align-items:center;justify-content:center;transition:transform .3s,background .3s;box-shadow:0 8px 24px rgba(0,0,0,.3)}
.hp4 .video-card:hover .play-btn{transform:scale(1.1);background:#fff}
/* Video swiper pagination bullets */
.hp4 .hp4-video-bullet{display:inline-block;width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.25);margin:0 5px!important;cursor:pointer;transition:all .3s;border:none}
.hp4 .hp4-video-bullet-active{background:#fff;width:28px;border-radius:50px}
.hp4 .hp4-video-prev:hover,.hp4 .hp4-video-next:hover{background:var(--color-accent-primary)!important;color:#fff!important}

/* Hero rotating word */
.hp4 .rotating-word{color:var(--color-accent-primary-hover);position:relative;display:inline}
.hp4 .rotating-word .word{display:inline;transition:opacity .4s ease,transform .4s ease}
.hp4 .rotating-word .cursor{display:inline-block;width:2px;height:1em;background:var(--color-accent-primary);margin-left:2px;vertical-align:text-bottom;animation:hp4Blink 1s step-end infinite}
@keyframes hp4Blink{0%,100%{opacity:1}50%{opacity:0}}

/* Hero floating micro badges */
.hp4 .micro-badge{position:absolute;background:#fff;border-radius:12px;padding:10px 16px;font-size:12px;font-weight:600;color:var(--color-text-primary);box-shadow:0 4px 16px rgba(0,0,0,.1);white-space:nowrap;animation:hp4Bob 3s ease-in-out infinite}
.hp4 .micro-badge:nth-child(odd){animation-delay:0s}
.hp4 .micro-badge:nth-child(even){animation-delay:.5s}
@keyframes hp4Bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}

/* Social proof strip in hero */
.hp4 .social-proof-strip{display:flex;align-items:center;gap:16px;margin-bottom:28px}
/* Hero split: CSS Grid so column 2 is always exactly “rest of row” (flex was leaving slack) */
.hp4 .hp4-hero-row{
  display:grid;
  grid-template-columns:minmax(0,min(520px,100%)) minmax(0,1fr);
  gap:clamp(20px,3vw,40px);
  width:100%;
  align-items:center;
}
@media(max-width:900px){
  .hp4 .hp4-hero-row{grid-template-columns:1fr;align-items:stretch}
}
.hp4 .hp4-hero-copy{min-width:0;max-width:100%}
.hp4 .hp4-hero-visual{min-width:0;width:100%}
/* Hero right — proof cards */
.hp4 .hp4-hero-float-wrap{background:transparent;border-radius:0;padding:10px 0;box-shadow:none;width:100%;max-width:none;position:relative;perspective:900px}
/* 3D tilt container */
.hp4 .hp4-hero-float-3d{transform-style:preserve-3d;transition:transform .15s ease-out;will-change:transform}
.hp4 .hp4-hero-float{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;width:100%;max-width:100%;margin:0 auto;align-content:start;position:relative;z-index:1}
.hp4 .hp4-hero-float-slot{display:flex;align-items:stretch;width:100%;min-width:0;box-sizing:border-box}
.hp4 .hp4-hero-float-slot--wide{grid-column:1 / -1;margin-bottom:4px}
.hp4 .hp4-hero-float-slot--solo{grid-column:1 / -1;justify-self:center;max-width:min(100%,420px);width:100%}
.hp4 .hp4-hero-float-tilt{width:100%;transform-origin:center center;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}
.hp4 .hp4-hero-float-slot:hover .hp4-hero-float-tilt{transform:rotate(0deg) translateY(-8px) scale(1.04)!important}
/* Card base: frosted glass with gradient border on hover */
.hp4 .hp4-hero-float-card{position:relative;width:100%;min-height:100%;background:rgba(255,255,255,.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(226,232,240,.6);border-radius:16px;padding:16px 18px;box-shadow:0 8px 32px rgba(15,23,42,.08),0 2px 8px rgba(15,23,42,.04);transition:all .4s cubic-bezier(.22,1,.36,1);overflow:hidden}
/* Shimmer sweep on hover */
.hp4 .hp4-hero-float-card::after{content:'';position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.5) 50%,transparent 60%);transition:none;pointer-events:none}
.hp4 .hp4-hero-float-slot:hover .hp4-hero-float-card::after{left:150%;transition:left .6s ease}
.hp4 .hp4-hero-float-slot:hover .hp4-hero-float-card{box-shadow:0 24px 56px rgba(15,23,42,.14),0 8px 24px rgba(37,99,235,.12);border-color:rgba(37,99,235,.25);background:rgba(255,255,255,.95)}
/* Wide partnership card — gradient border + premium feel */
.hp4 .hp4-hero-float-slot--wide .hp4-hero-float-card{border:none;padding:18px 20px;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(237,242,255,.9));box-shadow:0 20px 48px rgba(15,23,42,.10),0 6px 16px rgba(37,99,235,.06),inset 0 1px 0 rgba(255,255,255,.9)}
.hp4 .hp4-hero-float-slot--wide .hp4-hero-float-card::before{content:'';position:absolute;inset:-1px;border-radius:17px;padding:1.5px;background:linear-gradient(135deg,var(--color-accent-primary),#10b981,#7c3aed,var(--color-accent-primary));background-size:300% 300%;animation:hp4BorderGlow 6s ease infinite;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:-1}
@keyframes hp4BorderGlow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
/* Colored left accent on small cards */
.hp4 .hp4-hero-float-slot:not(.hp4-hero-float-slot--wide):not(.hp4-hero-float-slot--solo) .hp4-hero-float-card{border-left:3px solid var(--card-accent,var(--color-border))}
/* Solo card gets a subtle gradient accent too */
.hp4 .hp4-hero-float-slot--solo .hp4-hero-float-card{border-left:3px solid #ca8a04}
/* Staggered float-in animation */
@keyframes hp4CardFloat{from{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
.hp4 .hp4-hero-float-slot .hp4-hero-float-tilt{animation:hp4CardFloat .7s cubic-bezier(.22,1,.36,1) backwards}
.hp4 .hp4-hero-float-slot:nth-child(1) .hp4-hero-float-tilt{animation-delay:.15s}
.hp4 .hp4-hero-float-slot:nth-child(2) .hp4-hero-float-tilt{animation-delay:.3s}
.hp4 .hp4-hero-float-slot:nth-child(3) .hp4-hero-float-tilt{animation-delay:.4s}
.hp4 .hp4-hero-float-slot:nth-child(4) .hp4-hero-float-tilt{animation-delay:.5s}
.hp4 .hp4-hero-float-slot:nth-child(5) .hp4-hero-float-tilt{animation-delay:.6s}
.hp4 .hp4-hero-float-slot:nth-child(6) .hp4-hero-float-tilt{animation-delay:.7s}
.hp4 .hp4-hero-float-slot:nth-child(7) .hp4-hero-float-tilt{animation-delay:.8s}
.hp4 .hp4-hero-float-slot:nth-child(8) .hp4-hero-float-tilt{animation-delay:.9s}
/* Floating particles */
.hp4 .hp4-hero-particle{position:absolute;border-radius:50%;pointer-events:none;z-index:0}
.hp4 .hp4-hero-particle--1{width:4px;height:4px;background:var(--color-accent-primary);top:15%;right:8%;animation:hp4Float 6s ease-in-out infinite;opacity:.5}
.hp4 .hp4-hero-particle--2{width:3px;height:3px;background:#10b981;top:45%;right:3%;animation:hp4Float 8s ease-in-out 1s infinite;opacity:.4}
.hp4 .hp4-hero-particle--3{width:5px;height:5px;background:#7c3aed;bottom:20%;left:5%;animation:hp4Float 7s ease-in-out 2s infinite;opacity:.35}
.hp4 .hp4-hero-particle--4{width:3px;height:3px;background:#d97706;top:8%;left:25%;animation:hp4Float 9s ease-in-out .5s infinite;opacity:.4}
.hp4 .hp4-hero-particle--5{width:6px;height:6px;background:var(--color-accent-primary);bottom:10%;right:15%;animation:hp4Float 5s ease-in-out 1.5s infinite;opacity:.25}
.wminfo{font-size:32px;font-weight:800;color:var(--color-text-primary);font-family:'Plus Jakarta Sans',sans-serif}
@keyframes hp4Float{0%,100%{transform:translateY(0) translateX(0)}25%{transform:translateY(-12px) translateX(6px)}50%{transform:translateY(-6px) translateX(-8px)}75%{transform:translateY(-18px) translateX(4px)}}
@media(min-width:992px){
  .hp4 .hp4-hero-float{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 22px}
  .hp4 .hp4-hero-float-slot--solo{grid-column:1 / -1;justify-self:center;max-width:min(100%,480px);width:100%}
}
@media(min-width:768px) and (max-width:991px){
  .hp4 .hp4-hero-float{gap:18px 20px}
}
@media(max-width:767px){
  .wminfo{font-size: 18px}
  .hp4 .hp4-hero-float-wrap{display:none}
  .hp4 .section-badge{font-size: 10px}
  .hp4 .hp4-hero-particle{display:none}
  .hp4 .section{padding:48px 0!important}
  .hp4 .hp4-hero-section.section{padding-top:120px!important;padding-bottom:60px!important}
  .hp4 h1{font-size:38px!important}
  .hp4 h2{font-size:24px!important}
  .hp4 .section-subtitle{font-size:15px!important}
  .hp4 .container{padding:0 16px!important}
  .hp4 .hp4-svc-nav{display:none!important}
  .hp4 .hp4-eng-nav{display:none!important}
  .hp4 .hp4-why-nav{display:none!important}
  .hp4 .hp4-ind-nav{display:none!important}
  .hp4 .hp4-svc-card{padding:24px!important}
  .hp4 .hp4-svc-card h3{font-size:18px!important}
  .hp4 .hp4-svc-card div[style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr!important}
  .hp4 .comparison-table .table-header,.hp4 .comparison-table .table-row{grid-template-columns:1fr!important;text-align:left}
  .hp4 .comparison-table .table-header>div:first-child,.hp4 .comparison-table .table-row>div:first-child{font-weight:700}
  .hp4 .hp4-sticky-text{display:none}
  .hp4 .sticky-cta .container{justify-content:center!important}
  .hp4 .sticky-cta-actions{margin-left:0!important;justify-content:center}
  .hp4 .btn-primary,.hp4 .btn-secondary{font-size:14px!important;padding:12px 20px!important}
}
@media(prefers-reduced-motion:reduce){
  .hp4 .hp4-hero-float-tilt,.hp4 .hp4-hero-float-slot:hover .hp4-hero-float-tilt{transform:none!important;transition:none!important}
  .hp4 .hp4-hero-float-slot .hp4-hero-float-tilt{animation:none}
  .hp4 .hp4-hero-particle{animation:none!important}
  .hp4 .hp4-hero-float-card::after{display:none}
}
.hp4 .avatar-stack{display:flex}
.hp4 .avatar-stack span{width:32px;height:32px;border-radius:50%;border:2px solid #fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#000;margin-left:-8px}
.hp4 .avatar-stack span:first-child{margin-left:0}

/* Problem cards (The Challenge) */
.hp4 .problem-card{background:#fff;padding:32px;border:1px solid #fee2e2;border-top:3px solid transparent;border-image:linear-gradient(90deg,#ef4444,transparent) 1;border-image-slice:1 1 0 1;transition:all .4s cubic-bezier(.22,1,.36,1)}
.hp4 .problem-card:hover{border-color:var(--color-accent-primary);border-image:linear-gradient(90deg,var(--color-accent-primary),var(--color-accent-secondary)) 1;border-image-slice:1 1 0 1;transform:translateY(-4px);box-shadow:0 12px 36px rgba(0,0,0,.08)}

/* Comparison table */
.hp4 .comparison-table{border-radius:16px;overflow:hidden;border:1px solid var(--color-border)}
.hp4 .comparison-table .table-header{background:var(--color-bg-dark);color:#fff;display:grid;grid-template-columns:1.5fr 1fr 1fr;padding:20px 24px;font-weight:700;font-size:15px}
.hp4 .comparison-table .table-row{display:grid;grid-template-columns:1.5fr 1fr 1fr;padding:16px 24px;border-bottom:1px solid var(--color-border-light);align-items:center;font-size:15px}
.hp4 .comparison-table .table-row:nth-child(even){background:var(--color-bg-secondary)}
.hp4 .comparison-table .table-row .wm-col{background:rgba(37,99,235,.04);padding:16px;margin:-16px;display:flex;align-items:center;justify-content:center}
.hp4 .comparison-table .table-row .wm-col-2{padding:16px;margin:-16px;display:flex;align-items:center;justify-content:center}
.hp4 .comparison-table .check-green{color:#10b981;font-size:20px;font-weight:bold}
.hp4 .comparison-table .cross-red{color:#ef4444;font-size:20px;font-weight:bold}

/* Slide-out panel */
.hp4 .slide-tab{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:1000;background:var(--color-accent-primary);color:#fff;padding:16px 10px;border-radius:8px 0 0 8px;cursor:pointer;writing-mode:vertical-rl;text-orientation:mixed;font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;border:none;box-shadow:-2px 0 12px rgba(37,99,235,.2);transition:background .2s}
.hp4 .slide-tab:hover{background:var(--color-accent-primary-hover)}
.hp4 .slide-panel-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:1001;opacity:0;pointer-events:none;transition:opacity .3s}
.hp4 .slide-panel-overlay.active{opacity:1;pointer-events:auto}
.hp4 .slide-panel{position:fixed;right:0;top:0;bottom:0;width:420px;max-width:90vw;background:#fff;z-index:1002;transform:translateX(100%);transition:transform .35s cubic-bezier(.22,1,.36,1);overflow-y:auto;box-shadow:-8px 0 32px rgba(0,0,0,.15)}
.hp4 .slide-panel.active{transform:translateX(0)}
.hp4 .slide-panel-header{padding:24px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--color-border)}
.hp4 .slide-panel-close{width:36px;height:36px;border-radius:50%;border:1px solid var(--color-border);background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}
.hp4 .slide-panel-close:hover{background:var(--color-bg-secondary)}
.hp4 .slide-panel-body{padding:24px}

/* WhatsApp button */
.hp4 .whatsapp-btn{position:fixed;bottom:90px;left:32px;z-index:998;width:56px;height:56px;border-radius:50%;background:#25D366;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(37,211,102,.4);transition:transform .2s;text-decoration:none}
.hp4 .whatsapp-btn:hover{transform:scale(1.1)}
.hp4 .whatsapp-btn::before{content:'';position:absolute;inset:-4px;border-radius:50%;border:2px solid #25D366;animation:hp4WaPulse 2s ease-out infinite;opacity:0}
@keyframes hp4WaPulse{0%{transform:scale(1);opacity:.6}100%{transform:scale(1.5);opacity:0}}
.hp4 .whatsapp-tooltip{position:absolute;left:64px;top:50%;transform:translateY(-50%);background:var(--color-bg-dark);color:#fff;padding:8px 14px;border-radius:8px;font-size:13px;font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s}
.hp4 .whatsapp-btn:hover .whatsapp-tooltip{opacity:1}

/* Blog cards */
.hp4 .blog-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.hp4 .blog-featured{grid-row:span 2}
.hp4 .blog-card{background:#fff;border-radius:16px;overflow:hidden;border:1px solid var(--color-border);transition:all .4s cubic-bezier(.22,1,.36,1)}
.hp4 .blog-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px rgba(0,0,0,.1)}
.hp4 .blog-card-img{height:200px;background:var(--color-border);display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:14px}
.hp4 .blog-featured .blog-card-img{height:100%;min-height:300px}

/* Bento grid stats */
.hp4 .bento-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.hp4 .bento-card{background:var(--color-bg-dark-card);border-radius:16px;padding:32px;color:#fff}
.hp4 .bento-card.span-2{grid-column:span 2}
.hp4 .bento-card .bento-number{font-size:48px;font-weight:800;font-family:'Plus Jakarta Sans',sans-serif;background:linear-gradient(135deg,#fff,var(--color-accent-primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hp4 .bento-card .bento-label{font-size:14px;color:var(--color-text-on-dark);margin-top:8px}

/* Proof strips */
.hp4 .proof-strip{padding:20px 0;border-top:1px solid var(--color-border-light);border-bottom:1px solid var(--color-border-light);background:#fff}
.hp4 .proof-strip-dark{background:var(--color-bg-dark);border:none;padding:32px 0}
.hp4 .proof-strip-blue{background:var(--color-accent-primary);border:none;padding:48px 0}

/* Focus rings */
.hp4 *:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}

/* Responsive */
@media(max-width:1023px){
  .hp4 .section{padding:60px 0}
  .hp4 .section-header{margin-bottom:40px}
  .hp4 h1{font-size:32px}
  .hp4 h2{font-size:28px}
  .hp4 h3{font-size:20px}
  .hp4 p,.hp4 li{font-size:16px}
  .hp4 .stat-number{font-size:36px}
  .hp4 .timeline{flex-direction:column;gap:32px}
  .hp4 .timeline::before{display:none}
  .hp4 .bento-grid{grid-template-columns:repeat(2,1fr)}
  .hp4 .bento-card.span-2{grid-column:span 1}
  .hp4 .comparison-table .table-header,.hp4 .comparison-table .table-row{grid-template-columns:1.2fr 1fr 1fr;font-size:13px;padding:12px 16px}
  .hp4 .blog-grid{grid-template-columns:1fr}
  .hp4 .blog-featured{grid-row:span 1}
  .hp4 .slide-tab{display:none}
  .hp4 .challenge-grid{grid-template-columns:1fr!important}
  .hp4 .expertise-grid{grid-template-columns:1fr!important}
  .hp4 .industry-grid{grid-template-columns:1fr!important}
  .hp4 .engagement-grid{grid-template-columns:1fr!important}
  .hp4 .cases-grid{grid-template-columns:1fr!important}
  .hp4 .video-grid{grid-template-columns:1fr!important}
  .hp4 .recognition-grid{grid-template-columns:1fr!important}
  .hp4 .partnership-grid{grid-template-columns:1fr!important}
}
@media(max-width:767px){
  .hp4 .bento-grid{grid-template-columns:1fr}
  .hp4 .whatsapp-btn{bottom:80px;left:16px}
  .hp4 .back-top{bottom:90px;right:16px}
  .hp4 .social-proof-strip{flex-wrap:wrap}
  .hp4 .comparison-table .table-row .wm-col{ margin:5px 0 0 0; padding:0 8px; justify-content: flex-start; gap:5px; }
  .hp4 .comparison-table .table-row .wm-col-2{ margin:5px 0 0 0; padding:0 8px; justify-content: flex-start; gap:5px; }
}
@media(prefers-reduced-motion:reduce){.hp4 *{animation:none!important;transition:none!important}}

html{scroll-behavior:smooth;scroll-padding-top:108px}
