.small, small {font-size: .675em !important;}

/* Loading Screen */
.loading-screen {position:fixed; inset:0; background:linear-gradient(135deg,#f8fafc,#fff,#fff5f5); z-index:2000; transition:opacity 1s ease;}
.loading-screen.hide {opacity:0; pointer-events:none;}
.loading-dots .dot {width:8px;height:8px;border-radius:50%;animation:bounce 1s infinite ease-in-out;}
.loading-dots .dot:nth-child(2){animation-delay:.15s;opacity:.6}
.loading-dots .dot:nth-child(3){animation-delay:.3s}
@keyframes bounce {0%,80%,100%{transform:translateY(0)}40%{transform:translateY(-6px)}}

/* Scroll progress */
.scroll-progress {position:fixed; top:0; left:0; width:100%; height:4px; background:rgba(0,0,0,.05); z-index:1500; overflow:hidden;}
.scroll-progress-bar {height:100%; width:0; background:linear-gradient(90deg,#f87171,#ef4444,#dc2626); transition:width .3s ease; position:relative;}
.scroll-progress-bar::after {content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent); animation:shimmer 1.2s linear infinite; mix-blend-mode:overlay;}
@keyframes shimmer {0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}

/* Section indicator */
.section-indicator {position:fixed; top:70px; right:1rem; background:#fff; border:1px solid #fcd3d3; padding:.35rem .75rem; font-size:.65rem; letter-spacing:.05em; border-radius:1rem; box-shadow:0 4px 10px -2px rgba(0,0,0,.08); z-index:1400; animation:fadeIn .5s ease;}
@keyframes fadeIn {from{opacity:0; transform:translateY(-4px);} to{opacity:1; transform:translateY(0);}}



/* Dropdown */
.benefit-card { transition: var(--fast); border-color: #eceef5; }
.benefit-card:before { content:""; position:absolute; inset:0; background: linear-gradient(140deg,rgba(255,0,72,0.08),rgba(255,106,61,0.06),transparent 80%); opacity:0; transition: var(--fast); }
.benefit-card:hover { transform: translateY(-6px); box-shadow: 0 8px 24px -6px rgba(0,0,0,0.16); }
.benefit-card:hover:before { opacity:1; }
.benefit-metric { font-size:.65rem; letter-spacing:.5px; }
.benefit-icon { font-size:1.4rem; }
.dropdown-mega {position:relative;}
.dropdown-mega .dropdown-panel {position:absolute; top:100%; left:0; background:#fff; border:1px solid #e5e7eb; border-radius:1rem; padding:.25rem 0; min-width:220px; opacity:0; transform:translateY(8px) scale(.97); pointer-events:none; transition:all .35s cubic-bezier(.34,1.56,.64,1); z-index:1200;}
.growth-card { background: linear-gradient(135deg,#fff,#f9fbff); }
.growth-card:before { content:""; position:absolute; top:-10%; right:-10%; width:50%; height:140%; background: radial-gradient(circle at center,rgba(255,0,72,0.08),transparent 70%); transform: rotate(25deg); opacity:.5; }
.gmetric { transition: var(--fast); }
.gmetric:hover { transform: translateY(-4px); box-shadow: 0 8px 18px -6px rgba(0,0,0,0.15); }
.gmetric .gm-label { font-size:.65rem; letter-spacing:.5px; }
.gmetric .gm-change { font-size:.55rem; }
.gmetric.revealed { animation: scaleFade .6s var(--easeOut) both; }
@keyframes scaleFade { from { opacity:0; transform: translateY(18px) scale(.95);} to { opacity:1; transform: translateY(0) scale(1);} }
.dropdown-mega:hover .dropdown-panel, .dropdown-mega.open .dropdown-panel {opacity:1; transform:translateY(4px) scale(1); pointer-events:auto;}
.dropdown-panel .list-group-item {border:0; padding:.65rem 1rem; font-size:.8rem; background:transparent; transition:background .3s, padding-left .3s;}
.success-story-card { background: linear-gradient(135deg,#fff,#f8faff); }
.success-story-card:before { content:""; position:absolute; left:-8%; top:-8%; width:40%; height:140%; background: linear-gradient(140deg,rgba(255,0,72,0.15),rgba(255,106,61,0.05),transparent 75%); filter: blur(4px); opacity:.35; }
.story-metric { transition: var(--fast); }
.story-metric:hover { transform: translateY(-4px); box-shadow:0 6px 16px -4px rgba(0,0,0,0.15); }
.story-metric .sm-label { letter-spacing:.5px; }
.story-metric.revealed { animation: fadeUp .65s var(--easeOut) both; }
.success-story-card .avatar { width:52px; height:52px; box-shadow:0 4px 10px -3px rgba(0,0,0,0.25); }
.dropdown-panel .list-group-item:hover {background:#f8fafc; padding-left:1.35rem;}
.dropdown-mega .chevron {font-size:.7rem; margin-left:.25rem; transition:transform .3s; display:inline-block;}
.business-impact-section .impact-card,
.business-impact-section .benefit-card,
.business-impact-section .gmetric,
.business-impact-section .story-metric { opacity:0; transform: translateY(28px); }
.dropdown-mega:hover .chevron {transform:rotate(180deg);}

.impact-card.active .ic-value,
.gmetric.active .gm-value,
.story-metric.active .sm-value { color:#ff0048; }
/* Mobile nav */
#mobileOverlay {position:fixed; inset:0; background:rgba(0,0,0,.3); opacity:0; pointer-events:none; transition:opacity .4s; z-index:1100;}
#mobileOverlay.show {opacity:1; pointer-events:auto;}
@media (max-width:991.98px){
  #mainNav {position:fixed; top:0; right:-100%; width:300px; height:100vh; background:#fff; padding:5rem 1.25rem 2rem; box-shadow:-4px 0 18px -4px rgba(0,0,0,.12); transition:right .5s cubic-bezier(.34,1.56,.64,1); display:block!important; overflow-y:auto;}
  #mainNav.open {right:0;}
  .navbar-nav .nav-item {margin-bottom:.25rem;}
  .navbar-nav .nav-link {display:block; border-radius:.6rem;}
  .navbar-nav .nav-link:hover {background:#f1f5f9;}
  .dropdown-mega .dropdown-panel {position:static; transform:none!important; opacity:1!important; border:none; box-shadow:none; padding:0; margin-top:.25rem;}
}

/* Hero */
.hero-section {background:#fff;}
.hero-bg-layers {position:absolute; inset:0; overflow:hidden;}
.hero-bg-layers::before {content:""; position:absolute; inset:0; background:linear-gradient(145deg,#f1f5f9,#ffffff,#f0f9ff); opacity:.9;}
/* Decorative gradient overlays */
.hero-bg-layers::after {content:""; position:absolute; inset:0; background:radial-gradient(circle at 20% 30%, rgba(59,130,246,.18), transparent 60%), radial-gradient(circle at 80% 70%, rgba(239,68,68,.15), transparent 55%), radial-gradient(circle at 60% 40%, rgba(6,182,212,.15), transparent 65%); mix-blend-mode:normal;}
.hero-intro .hero-tagline {font-size: 25px !important;width: 60%;}
.hero-title .text-gradient {background:linear-gradient(90deg,#2563eb,#1d4ed8,#0891b2); -webkit-background-clip:text; background-clip:text; color:transparent; position:relative;}
.hero-title .text-gradient::after {content:""; position:absolute; left:0; bottom:-6px; height:6px; width:100%; background:linear-gradient(90deg,#60a5fa,#06b6d4); border-radius:3px; opacity:.5;}
.hero-tagline .highlight {position:relative; font-weight:600; color:#1d4ed8;}
.hero-tagline .highlight::after {content:""; position:absolute; left:0; right:0; bottom:-4px; height:4px; background:linear-gradient(90deg,#3b82f6,#06b6d4); border-radius:2px; opacity:.8;}
.hero-badge {background:linear-gradient(90deg,#eff6ff,#ecfeff); border:1px solid rgba(59,130,246,.4); font-size:.75rem; letter-spacing:.05em;}
.pulse-dot {width:8px;height:8px;border-radius:50%; background:#3b82f6; animation:bluePulse 1.8s infinite ease-in-out;}
@keyframes bluePulse {0%,100%{transform:scale(.9);opacity:.5}50%{transform:scale(1.35);opacity:1}}
.star {color:#3b82f6; font-size:.85rem; animation:rotateStar 6s linear infinite;}
@keyframes rotateStar {0%{transform:rotate(0)}100%{transform:rotate(360deg)}}

.value-card {position:relative; border:1px solid rgba(0,0,0,.06); background:rgba(255,255,255,.7); backdrop-filter:blur(12px); border-radius:1.5rem; overflow:hidden; transition:all .5s;}
.value-card::before {content:""; position:absolute; inset:0; background:linear-gradient(135deg,#eff6ff,#ecfeff); opacity:0; transition:opacity .5s;z-index: -9}
.value-card:hover {transform:translateY(-6px) scale(1.02); box-shadow:0 20px 40px -16px rgba(59,130,246,.25);} 
.value-card:hover::before {opacity:1;}
.value-card .icon-box {width:56px;height:56px;border-radius:1rem; display:flex;align-items:center;justify-content:center; font-size:1.5rem; box-shadow:0 6px 14px -4px rgba(0,0,0,.15);}

/* Decorative elements (simplified, can be expanded later) */
.hero-decor {position:absolute; inset:0; pointer-events:none;}
.hero-decor .shape {position:absolute; border-radius:50%; opacity:.35; animation:float 12s ease-in-out infinite; mix-blend-mode:plus-lighter;}
/* Individual shapes mimic React animated geometry (simplified) */
.hero-decor .s1 {top:12%; left:10%; width:130px; height:130px; background:rgba(59,130,246,.35); filter:blur(2px); animation-duration:14s;}
.hero-decor .s2 {top:35%; right:12%; width:110px; height:110px; background:rgba(239,68,68,.35); animation-direction:reverse; animation-duration:16s;}
.hero-decor .s3 {bottom:24%; left:18%; width:95px; height:95px; background:linear-gradient(135deg, rgba(59,130,246,.28), rgba(6,182,212,.32)); border-radius:28px; animation-duration:18s;}
.hero-decor .s4 {bottom:12%; right:14%; width:120px; height:120px; background:rgba(239,68,68,.28); animation-duration:20s;}
.hero-decor .s5 {top:55%; left:50%; width:70px; height:70px; background:rgba(6,182,212,.30); animation-duration:22s;}
@keyframes float {0%,100%{transform:translateY(0)}50%{transform:translateY(-30px)}}

/* Utilities */
.text-gradient {background:linear-gradient(90deg,#2563eb,#1d4ed8,#0891b2); -webkit-background-clip:text; background-clip:text; color:transparent;}



/* =============================== */
/* Ambient Background Effects      */
/* =============================== */
.ambient-bg { position:fixed; inset:0; z-index:0; pointer-events:none; overflow:hidden; }
.ambient-bg .base-gradient { position:absolute; inset:0; background:linear-gradient(135deg,#fdfefe,#f7faff 40%,#fff5f7 70%); }
.ambient-bg .amb-shape { position:absolute; filter:blur(0px); opacity:.55; mix-blend-mode: multiply; }
.ambient-bg .ring { border:2px solid rgba(255,0,72,0.18); border-radius:50%; animation: ambFloat 18s linear infinite; }
.ambient-bg .ring-a { width:360px; height:360px; top:12%; left:10%; animation-duration: 26s; }
.ambient-bg .ring-b { width:240px; height:240px; bottom:18%; right:12%; animation-direction: reverse; animation-duration: 32s; }
.ambient-bg .blob { background:radial-gradient(circle at 30% 30%, rgba(255,0,72,0.25), rgba(255,106,61,0.15) 60%, transparent 70%); border-radius:50%; filter:blur(20px); animation: ambPulse 9s ease-in-out infinite; }
.ambient-bg .blob-a { width:420px; height:420px; top:45%; left:-8%; animation-delay: -2s; }
.ambient-bg .blob-b { width:340px; height:340px; top:15%; right:-5%; animation-delay: -5s; }
.ambient-bg .geo { background:rgba(255,0,72,0.08); backdrop-filter:blur(2px); animation: ambDrift 22s cubic-bezier(.34,1.56,.64,1) infinite; }
.ambient-bg .geo-a { width:160px; height:160px; top:30%; right:30%; transform:rotate(25deg); clip-path:polygon(50% 0%, 85% 15%, 100% 50%, 85% 85%, 50% 100%, 15% 85%, 0 50%, 15% 15%); }
.ambient-bg .geo-b { width:120px; height:120px; bottom:28%; left:40%; transform:rotate(-15deg); clip-path:polygon(50% 0%, 100% 38%, 82% 100%, 18% 100%, 0 38%); animation-duration: 28s; }
.ambient-bg .noise { position:absolute; inset:0; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 210 210' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n' x='0' y='0'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='210' height='210' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E"); opacity:.07; mix-blend-mode:overlay; }

@keyframes ambFloat { 0% { transform:translate3d(0,0,0) rotate(0deg);} 50% { transform:translate3d(40px,25px,0) rotate(180deg);} 100% { transform:translate3d(0,0,0) rotate(360deg);} }
@keyframes ambPulse { 0%,100% { transform:scale(0.9) translateY(0);} 50% { transform:scale(1.1) translateY(-25px);} }
@keyframes ambDrift { 0% { transform:translate(0,0) rotate(0deg);} 25% { transform:translate(30px,-25px) rotate(90deg);} 50% { transform:translate(0,-40px) rotate(180deg);} 75% { transform:translate(-30px,-10px) rotate(270deg);} 100% { transform:translate(0,0) rotate(360deg);} }

@media (max-width: 992px){
  .ambient-bg .blob-a{width:300px;height:300px;}
  .ambient-bg .blob-b{width:260px;height:260px;}
  .ambient-bg .ring-a{width:260px;height:260px;}
  .ambient-bg .ring-b{width:180px;height:180px;}
}

/* Process Section */
.process-section {background:#fff;}
.process-bg::before {content:""; position:absolute; inset:0; background:linear-gradient(145deg,#ffffff,#f8fafc,#f1f5f9);} 
.process-bg::after {content:""; position:absolute; inset:0; background:radial-gradient(circle at 18% 22%, rgba(239,68,68,.18), transparent 60%), radial-gradient(circle at 82% 78%, rgba(59,130,246,.15), transparent 55%); opacity:.55;}
.process-timeline .process-step {position:relative; padding:1.25rem 1.25rem 1.25rem 0; border-left:4px solid transparent; transition:all .6s; opacity:0; transform:translateY(40px);} 
.process-timeline .process-step.active {border-left-color:#dc2626; opacity:1; transform:translateY(0);} 
.step-num-tile {width:72px;height:72px;border-radius:1.25rem;background:#111827;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.5rem;box-shadow:0 10px 28px -12px rgba(0,0,0,.4); position:relative; overflow:hidden;}
.step-num-tile::after {content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(239,68,68,.25),rgba(59,130,246,.25)); opacity:0; transition:opacity .6s; mix-blend-mode:overlay;}
.process-step:hover .step-num-tile::after {opacity:.55;}
.process-step h3 {position:relative;}
.process-step h3::after {content:""; position:absolute; left:0; bottom:-6px; width:46px; height:3px; background:linear-gradient(90deg,#ef4444,#dc2626); border-radius:2px; opacity:.65; transform:scaleX(.4); transform-origin:left; transition:transform .6s cubic-bezier(.34,1.56,.64,1);} 
.process-step.active h3::after, .process-step:hover h3::after {transform:scaleX(1);} 

/* Comparison block */
.comparison-wrapper {position:relative; margin-top:3rem;}
.proc-view-toggle .toggle-shell {background:#f1f5f9; border:1px solid #e5e7eb; padding:.25rem; box-shadow:0 4px 14px -6px rgba(0,0,0,.08);}
.proc-view-toggle .toggle-btn {background:transparent; border:none; padding:.65rem 1.4rem; font-size:.75rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:#374151; border-radius:2rem; transition:all .45s; position:relative;}
.proc-view-toggle .toggle-btn.active {background:#111827; color:#fff; box-shadow:0 10px 28px -14px rgba(0,0,0,.45);} 
.proc-view-toggle .toggle-btn:not(.active):hover {color:#111827;}
.comp-col-head {background:#f8fafc; border:1px solid #e5e7eb; box-shadow:0 4px 12px -6px rgba(0,0,0,.06);} 
.comp-col-head.ours {background:linear-gradient(135deg,#fff5f5,#f8fafc); border-color:#fecaca;} 
.comp-row {cursor:pointer; position:relative; transition:all .6s; box-shadow:0 6px 18px -10px rgba(0,0,0,.06);} 
.comp-row::after {content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(239,68,68,.05),rgba(59,130,246,.05)); opacity:0; transition:opacity .6s;} 
.comp-row:hover {transform:translateY(-4px); box-shadow:0 18px 42px -18px rgba(0,0,0,.15);} 
.comp-row:hover::after {opacity:1;}
.comp-row .comp-ico {display:inline-flex; width:32px; height:32px; border-radius:.75rem; background:#f1f5f9; align-items:center; justify-content:center; font-size:1rem;}
.comp-row .comp-arrow {font-size:.9rem; color:#9ca3af; transition:transform .5s;} 
.comp-row.open .comp-arrow {transform:rotate(90deg);} 
.comp-box {position:relative; border:1px solid #e5e7eb; box-shadow:inset 0 0 0 0 rgba(0,0,0,.05); transition:all .6s;} 
.comp-box.alt {background:#f8fafc;} 
.comp-box.ours {background:#fff5f5; border-color:#fecaca;} 
.comp-box .inner {position:relative; z-index:2;} 
.comp-box::before {content:""; position:absolute; inset:0; background:linear-gradient(115deg,rgba(255,255,255,0),rgba(255,255,255,.5),rgba(255,255,255,0)); transform:translateX(-120%); opacity:.4;} 
.comp-row:hover .comp-box::before {animation:shine 1.2s ease forwards;} 
@keyframes shine {to{transform:translateX(120%);}} 
.comp-details {max-height:0; overflow:hidden; transition:max-height .7s cubic-bezier(.34,1.56,.64,1), opacity .45s; opacity:0;} 
.comp-row.open .comp-details {max-height:600px; opacity:1;} 
.comp-adv li {position:relative; padding-left:1rem; margin-bottom:.35rem;} 
.comp-adv li::before {content:""; position:absolute; left:0; top:.55rem; width:6px; height:6px; border-radius:50%; background:linear-gradient(90deg,#ef4444,#dc2626);} 

/* Detailed cards */
.detailed-view .detail-card {transition:all .6s; box-shadow:0 6px 22px -10px rgba(0,0,0,.08);} 
.detailed-view .detail-card::after {content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(239,68,68,.06),rgba(59,130,246,.05)); opacity:0; transition:opacity .6s;} 
.detailed-view .detail-card:hover {transform:translateY(-6px); box-shadow:0 24px 54px -22px rgba(0,0,0,.25);} 
.detailed-view .detail-card:hover::after {opacity:1;} 
.dc-ico {width:48px; height:48px; border-radius:1rem; background:#f1f5f9; display:flex; align-items:center; justify-content:center; font-size:1.25rem; font-weight:600;} 
.xsmall {font-size:.7rem;} 
.prog-group .prog-bar {position:relative; height:8px; border-radius:4px; background:#e5e7eb; overflow:hidden;} 
.prog-group .prog-bar.alt {background:#e5e7eb;} 
.prog-group .prog-bar.ours {background:#fee2e2;} 
.prog-group .prog-bar span {position:absolute; left:0; top:0; bottom:0; background:linear-gradient(90deg,#9ca3af,#6b7280); width:0; border-radius:4px; transition:width 1.2s cubic-bezier(.34,1.56,.64,1);} 
.prog-group .prog-bar.ours span {background:linear-gradient(90deg,#dc2626,#b91c1c);} 
.detailed-view .dc-adv li {position:relative; padding-left:1rem; margin-bottom:.4rem;} 
.detailed-view .dc-adv li::before {content:""; position:absolute; left:0; top:.55rem; width:6px; height:6px; background:linear-gradient(90deg,#ef4444,#dc2626); border-radius:50%;} 

/* Comparison CTA */
.comp-cta {background:linear-gradient(135deg,#111827,#1f2937); box-shadow:0 18px 48px -20px rgba(0,0,0,.45);} 
.comp-cta-bg {background:radial-gradient(circle at 15% 25%, rgba(239,68,68,.35), transparent 60%), radial-gradient(circle at 85% 75%, rgba(239,68,68,.25), transparent 55%), repeating-linear-gradient(45deg,rgba(255,255,255,.07)0,rgba(255,255,255,.07)2px,transparent 2px,transparent 6px); opacity:.55;} 

@media (max-width:575.98px){
  .step-num-tile {width:64px;height:64px;font-size:1.25rem;}
  .process-timeline .process-step {padding:1rem 0 1rem 0;}
  .proc-view-toggle .toggle-btn {padding:.55rem 1rem; font-size:.65rem;}
}

/* Testimonials Section */
.testimonials-section {background:#fff;}
.testimonials-bg::before {content:""; position:absolute; inset:0; background:linear-gradient(145deg,#f8fafc,#ffffff,#f1f5f9);} 
.testimonials-bg::after {content:""; position:absolute; inset:0; background:radial-gradient(circle at 25% 25%, rgba(239,68,68,.14), transparent 60%), radial-gradient(circle at 80% 75%, rgba(59,130,246,.18), transparent 55%); opacity:.55;}
.testi-badge {background:#fff; border:1px solid #fecaca; font-size:.65rem; letter-spacing:.1em; box-shadow:0 4px 12px -4px rgba(239,68,68,.25);} 
#storiesGrid .story-card {transition:all .65s; box-shadow:0 6px 18px -8px rgba(0,0,0,.06);} 
#storiesGrid .story-card::after {content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(239,68,68,.06),rgba(59,130,246,.05)); opacity:0; transition:opacity .6s;} 
#storiesGrid .story-card:hover {transform:translateY(-10px) scale(1.02); box-shadow:0 25px 55px -25px rgba(239,68,68,.35);} 
#storiesGrid .story-card:hover::after {opacity:1;} 
.story-icon {width:60px;height:60px;border-radius:1.1rem;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600;color:#fff;box-shadow:0 8px 24px -10px rgba(0,0,0,.25); position:relative;} 
.metrics .metric {background:#f8fafc!important; border:1px solid #e5e7eb;} 
.metric-val {font-size:.9rem;} 
.metric-label.tiny {font-size:.55rem; letter-spacing:.06em; text-transform:uppercase;} 
#storiesGrid .story-card .badge {font-size:.6rem; letter-spacing:.08em;} 
.testi-cta-card {max-width:960px; background:linear-gradient(135deg,#111827,#1f2937);} 
.testi-cta-bg {background:radial-gradient(circle at 15% 25%, rgba(239,68,68,.35), transparent 60%),radial-gradient(circle at 85% 75%, rgba(239,68,68,.25), transparent 55%),repeating-linear-gradient(45deg,rgba(255,255,255,.07)0,rgba(255,255,255,.07)2px,transparent 2px,transparent 6px); opacity:.6;} 
.testi-cta-card .cta-icon {width:72px;height:72px;border-radius:1.25rem;display:flex;align-items:center;justify-content:center;font-size:2rem;background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 10px 28px -12px rgba(239,68,68,.5);} 
.testi-cta-card a.btn.btn-danger {background:linear-gradient(90deg,#dc2626,#b91c1c); border:none; box-shadow:0 6px 18px -4px rgba(220,38,38,.45);} 
.testi-cta-card a.btn.btn-danger:hover {background:linear-gradient(90deg,#b91c1c,#991b1b); transform:translateY(-2px);} 
.testi-cta-card a.btn.btn-outline-light {backdrop-filter:blur(6px); border:2px solid rgba(255,255,255,.4);} 
.testi-cta-card a.btn.btn-outline-light:hover {background:rgba(255,255,255,.12);} 
.testi-cta-card .arrow {transition:transform .4s;} 
.testi-cta-card a.btn:hover .arrow {transform:translateX(4px);} 
@media (max-width:575.98px){
  #storiesGrid .story-card {padding:1.25rem;}
  .story-icon {width:52px;height:52px;font-size:1.25rem;}
}

/* FAQ Section */
.faq-section {background:#fff;}
.faq-bg::before {content:""; position:absolute; inset:0; background:linear-gradient(145deg,#ffffff,#f8fafc,#f1f5f9);} 
.faq-bg::after {content:""; position:absolute; inset:0; background:radial-gradient(circle at 20% 25%, rgba(239,68,68,.16), transparent 60%), radial-gradient(circle at 80% 75%, rgba(59,130,246,.18), transparent 55%); opacity:.55;}
.faq-badge {background:#fff; border:1px solid #fecaca; font-size:.65rem; letter-spacing:.1em; box-shadow:0 4px 12px -4px rgba(239,68,68,.25);} 
.faq-item {position:relative; transition:all .55s; box-shadow:0 6px 16px -10px rgba(0,0,0,.05);} 
.faq-item::after {content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(239,68,68,.05),rgba(59,130,246,.05)); opacity:0; transition:opacity .55s;z-index: -9} 
.faq-item.open, .faq-item:hover {transform:translateY(-4px); box-shadow:0 20px 42px -20px rgba(0,0,0,.15);} 
.faq-item.open::after, .faq-item:hover::after {opacity:1;} 
.faq-toggle {background:transparent; border:0; font-size:.9rem; font-weight:600; letter-spacing:.02em; position:relative;} 
.faq-icon {display:inline-flex; width:32px; height:32px; border-radius:.75rem; background:#f1f5f9; align-items:center; justify-content:center; font-weight:600; font-size:1rem; transition:all .5s;} 
.faq-item.open .faq-icon {background:#111827; color:#fff; transform:rotate(45deg);} 
.faq-body {font-size:.8rem; line-height:1.5; max-height:0; overflow:hidden; opacity:0; transition:max-height .7s cubic-bezier(.34,1.56,.64,1), opacity .45s;}
.faq-item.open .faq-body {max-height:260px; opacity:1;} 
@media (max-width:575.98px){
  .faq-toggle {font-size:.85rem; padding:1rem 1rem!important;}
  .faq-icon {width:28px;height:28px;font-size:.85rem;}
}

/* E-Commerce / Case Studies Section */
.ecommerce-section {background:#fff;}
.ecom-bg::before {content:"";position:absolute;inset:0;background:linear-gradient(145deg,#f8fafc,#ffffff,#fff5f5);} 
.ecom-bg::after {content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 22%, rgba(239,68,68,.15), transparent 60%),radial-gradient(circle at 82% 78%, rgba(59,130,246,.15), transparent 55%);opacity:.55;}
.ecom-badge {background:#fff; border:1px solid #fecaca; font-size:.65rem; letter-spacing:.1em; box-shadow:0 4px 14px -4px rgba(239,68,68,.25);} 
.text-gradient-red {background:linear-gradient(90deg,#374151,#dc2626,#374151); -webkit-background-clip:text; background-clip:text; color:transparent;}
.text-gradient-red .underline-accent {position:absolute; left:0; right:0; bottom:-6px; height:6px; background:linear-gradient(90deg,#9ca3af,#f87171,#9ca3af); border-radius:3px; opacity:.55;}
.case-number-wrap {padding-top:1rem;}
.case-number {position:absolute; top:-10px; left:-4px; font-size:6rem; line-height:1; color:#f1f5f9; pointer-events:none; transition:color .6s;}
.case-block:hover .case-number {color:#e5e7eb;}
.icon-tile {width:68px;height:68px;border-radius:1.5rem;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;box-shadow:0 10px 25px -10px rgba(59,130,246,.4);background:linear-gradient(135deg,#2563eb,#1d4ed8);} 
.case-title {position:relative;text-align: left;}
.case-card {transition:all .6s; box-shadow:0 10px 30px -12px rgba(0,0,0,.08)!important;}
.case-card::before {content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(59,130,246,.08),rgba(239,68,68,.08)); opacity:0; transition:opacity .6s;}
.case-card:hover {transform:translateY(-8px); box-shadow:0 25px 55px -25px rgba(0,0,0,.25)!important;}
.case-card:hover::before {opacity:1;}
.metric-tile {transition:all .5s;}
.metric-tile:hover {transform:translateY(-6px) scale(1.03); box-shadow:0 16px 40px -16px rgba(59,130,246,.25);}
.dot {display:inline-block;width:8px;height:8px;border-radius:50%;background:#374151;}
.dot.primary {background:#2563eb;}
.dot.dark {background:#374151;}
.case-link .arrow {transition:transform .4s;}
.case-link:hover .arrow {transform:translateX(4px);}

/* Strategic Advantage Block */
.strategic-badge {background:#fff; border:2px solid #fecaca; border-radius:1rem; font-size:.85rem;}
.strategic-badge .dash {display:inline-block;width:32px;height:2px;background:#fecaca; transition:background .4s;}
.strategic-badge:hover .dash {background:#ef4444;}
.desc-card {transition:all .6s; box-shadow:0 12px 32px -12px rgba(0,0,0,.08)!important;}
.desc-card::before {content:""; position:absolute; inset:0; background:linear-gradient(145deg,#fff,#f8fafc); opacity:.9;}
.desc-card::after {content:""; position:absolute; inset:0; background:radial-gradient(circle at 30% 30%, rgba(239,68,68,.15), transparent 60%); opacity:0; transition:opacity .6s;}
.desc-card:hover {transform:translateY(-6px); box-shadow:0 28px 60px -25px rgba(239,68,68,.35)!important;}
.desc-card:hover::after {opacity:1;}
.desc-card > * {position:relative; z-index:2;}
.quote-mark {width:60px;height:60px;border-radius:1rem;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;background:#fee2e2;color:#dc2626;box-shadow:0 6px 16px -8px rgba(239,68,68,.5);}
.floating-indicator {position:absolute; top:-14px; left:-14px; width:54px; height:54px; border-radius:1.25rem; background:#111827; color:#fff; font-weight:600; display:flex; align-items:center; justify-content:center; box-shadow:0 12px 34px -14px rgba(0,0,0,.4); transition:all .6s;}
.desc-card:hover .floating-indicator {transform:translate(6px,6px) rotate(6deg); background:#dc2626;}

/* Differentiators */
.diff-list {max-width:880px;}
.diff-item {position:relative;}
.diff-num-tile {min-width:70px;height:70px;border-radius:1.25rem;background:#111827;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.35rem;box-shadow:0 8px 22px -8px rgba(0,0,0,.4);transition:all .6s;}
.diff-item:hover .diff-num-tile {background:#dc2626; transform:scale(1.08) rotate(3deg); box-shadow:0 16px 42px -14px rgba(239,68,68,.5);}

/* CTA Card */
.ecom-cta .cta-card {max-width:960px; background:linear-gradient(135deg,#111827,#1f2937);}
.cta-bg {background:radial-gradient(circle at 15% 25%, rgba(239,68,68,.35), transparent 60%),radial-gradient(circle at 85% 75%, rgba(239,68,68,.25), transparent 55%),repeating-linear-gradient(45deg,rgba(255,255,255,.07)0,rgba(255,255,255,.07)2px,transparent 2px,transparent 6px); opacity:.6;}
.ecom-cta .cta-icon {width:72px;height:72px;border-radius:1.25rem;display:flex;align-items:center;justify-content:center;font-size:2rem;background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 10px 28px -12px rgba(239,68,68,.5);}
.ecom-cta .btn-danger {background:linear-gradient(90deg,#dc2626,#b91c1c);border:none;box-shadow:0 6px 18px -4px rgba(220,38,38,.45);} 
.ecom-cta .btn-danger:hover {background:linear-gradient(90deg,#b91c1c,#991b1b); transform:translateY(-2px);} 
.ecom-cta .btn-outline-light {backdrop-filter:blur(6px); border:2px solid rgba(255,255,255,.4);} 
.ecom-cta .btn-outline-light:hover {background:rgba(255,255,255,.12);} 
.ecom-cta .arrow {transition:transform .4s;}
.ecom-cta a.btn:hover .arrow {transform:translateX(4px);}

/* Small pulse variants */
.pulse-dot.small-dot {width:10px;height:10px;background:#dc2626;animation:redPulse 2s infinite;}
.pulse-dot.red {background:#dc2626;}
.pulse-dot.red.tiny {width:8px;height:8px;}

@media (max-width:991.98px){
  .case-number {font-size:4.5rem;}
  .diff-item {flex-direction:column;}
  .diff-num-tile {width:60px;height:60px;margin-bottom:.75rem;}
  .display-6 {font-size:2.2rem;}
}

@media (max-width:575.98px){
  .case-title {font-size:1.5rem;}
  .h2.case-title {font-size:1.55rem;}
  .icon-tile {width:58px;height:58px;font-size:1.6rem;}
  .diff-item {padding-bottom:2rem;}
}

/* Improved E-commerce reveal */
.eco-init {  transform:translateY(42px); will-change:transform,opacity; }
.eco-reveal { opacity:1 !important; transform:translateY(0)!important; transition: opacity .9s cubic-bezier(.34,1.56,.64,1), transform .9s cubic-bezier(.34,1.56,.64,1); }
@media (prefers-reduced-motion: reduce) { .eco-init { opacity:1; transform:none; } .eco-reveal { transition:none; }}



/* Expertise Section */
.expertise-section {background:#fff;}
.expertise-bg::before {content:""; position:absolute; inset:0; background:linear-gradient(145deg,#f8fafc,#ffffff,#f1f5f9);} 
.expertise-bg::after {content:""; position:absolute; inset:0; background:radial-gradient(circle at 30% 25%, rgba(239,68,68,.14), transparent 62%), radial-gradient(circle at 78% 78%, rgba(59,130,246,.18), transparent 55%); opacity:.55;}
.exp-badge {background:#fff; border:1px solid #e5e7eb; font-size:.65rem; letter-spacing:.12em; box-shadow:0 4px 14px -6px rgba(0,0,0,.07);} 
.exp-icon {font-size:1.1rem;}
.exp-stack .exp-tile {transition:all .6s; box-shadow:0 8px 22px -12px rgba(0,0,0,.08);} 
.exp-stack .exp-tile::after {content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(239,68,68,.06),rgba(59,130,246,.05)); opacity:0; transition:opacity .6s;z-index: -9} 
.exp-stack .exp-tile:hover {transform:translateY(-8px); box-shadow:0 28px 60px -25px rgba(0,0,0,.25);} 
.exp-stack .exp-tile:hover::after {opacity:1;} 
.exp-stack .exp-tile .tile-num {position:absolute; top:1rem; right:1rem; font-size:2.25rem; font-weight:700; line-height:1; color:#f3f4f6; pointer-events:none; transition:color .6s;} 
.exp-stack .exp-tile:hover .tile-num {color:#e5e7eb;} 
.exp-bullets li {position:relative; padding-left:1rem; margin-bottom:.4rem;} 
.exp-bullets li::before {content:""; position:absolute; left:0; top:.55rem; width:6px; height:6px; border-radius:50%; background:linear-gradient(90deg,#ef4444,#dc2626);} 

/* Expertise interactive list */
.exp-list {display:flex; flex-direction:column; gap:.5rem;}
.exp-item {position:relative; text-align:left; background:#fff; border:1px solid #e5e7eb; padding:.9rem 1.1rem; border-radius:.85rem; display:flex; flex-direction:column; align-items:flex-start; gap:.25rem; cursor:pointer; transition:all .5s; font-size:.8rem;}
.exp-item .label {font-weight:600; font-size:.8rem; letter-spacing:.02em; color:#111827;}
.exp-item .mini {font-size:.65rem; text-transform:uppercase; letter-spacing:.1em; color:#6b7280; font-weight:500;}
.exp-item .bullet {position:absolute; right:1rem; top:50%; width:8px; height:8px; background:#e5e7eb; border-radius:50%; transform:translateY(-50%); transition:all .5s;}
.exp-item:hover {background:#f8fafc; border-color:#d1d5db;}
.exp-item.active {background:#111827; border-color:#111827; transform:translateX(4px) scale(1.02); box-shadow:0 14px 34px -14px rgba(0,0,0,.4);} 
.exp-item.active .label {color:#fff;} 
.exp-item.active .mini {color:#9ca3af;} 
.exp-item.active .bullet {background:#dc2626; width:10px; height:10px;}

/* Panels */
.exp-content-wrapper {min-height:380px;}
.exp-panel {position:absolute; inset:0; opacity:0; transform:translateX(20px); pointer-events:none; transition:opacity .7s cubic-bezier(.34,1.56,.64,1), transform .7s cubic-bezier(.34,1.56,.64,1);} 
.exp-panel.active {opacity:1; transform:translateX(0); pointer-events:auto;}
.exp-panel-inner {min-height:380px; box-shadow:0 10px 30px -12px rgba(0,0,0,.08);} 
.exp-panel-inner::after {content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(239,68,68,.05),rgba(59,130,246,.05)); opacity:0; transition:opacity .6s;} 
.exp-panel-inner:hover::after {opacity:1;} 
.exp-feature-list .exp-feature {background:#f8fafc; border:1px solid #e5e7eb; border-radius:.7rem; padding:.55rem .75rem; font-size:.7rem; font-weight:600; letter-spacing:.03em; display:flex; align-items:center; justify-content:flex-start; transition:all .45s;} 
.exp-feature-list .exp-feature:hover {background:#fff; border-color:#d1d5db; transform:translateY(-4px) scale(1.02); box-shadow:0 8px 22px -12px rgba(0,0,0,.15);} 
.exp-stat {font-size:.65rem; letter-spacing:.12em;}

@media (max-width:991.98px){
  .exp-content-wrapper {min-height:360px;}
  .exp-panel-inner {min-height:360px;}
}
@media (max-width:575.98px){
  .exp-panel {position:relative; opacity:1!important; transform:none!important; pointer-events:auto;}
  .exp-content-wrapper {min-height:unset;} 
  .exp-item {flex-direction:row; align-items:center;}
  .exp-item .mini {display:none;}
}

/* Services Section */
.services-section {background:#fff;}
.services-bg::before {content:""; position:absolute; inset:0; background:linear-gradient(140deg,#ffffff,#f8fafc,#fff5f5);}
.services-bg::after {content:""; position:absolute; inset:0; background:radial-gradient(circle at 20% 30%, rgba(239,68,68,.15), transparent 60%), radial-gradient(circle at 80% 70%, rgba(59,130,246,.15), transparent 55%); opacity:.55;}
.svc-card {transition:all .55s; box-shadow:0 6px 18px -6px rgba(0,0,0,.06);} 
.svc-card .svc-num {position:absolute; top:1rem; right:1rem; background:#111827; color:#fff; font-size:.9rem; font-weight:600; padding:.65rem .9rem; border-radius:1rem; letter-spacing:.05em; box-shadow:0 4px 12px -4px rgba(0,0,0,.4);}
.svc-card .svc-line {width:48px; height:4px; background:#dc2626; border-radius:2px; margin-bottom:.75rem; transform:scaleX(0); transform-origin:left; transition:transform .6s cubic-bezier(.34,1.56,.64,1);}
.svc-card:hover .svc-line {transform:scaleX(1);}
.svc-card .svc-pill {display:inline-block; background:#f1f5f9; padding:.4rem .75rem; border-radius:1rem; color:#374151; transition:all .4s;}
.svc-card:hover .svc-pill {background:#fef2f2; color:#b91c1c;}
.svc-card .svc-features li {position:relative; padding-left:1rem; margin-bottom:.4rem;}
.svc-card .svc-features li::before {content:""; position:absolute; left:0; top:.55rem; width:6px; height:6px; border-radius:50%; background:linear-gradient(90deg,#ef4444,#dc2626);} 
.svc-card:hover {transform:translateY(-10px) scale(1.015); box-shadow:0 25px 50px -20px rgba(239,68,68,.25);} 
.svc-card::after {content:""; position:absolute; inset:0; background:linear-gradient(145deg,rgba(239,68,68,.05),rgba(255,255,255,0)); opacity:0; transition:opacity .6s;}
.svc-card:hover::after {opacity:1;}

.services-cta {background:linear-gradient(120deg,#111827,#7f1d1d,#111827);}
.services-cta-bg {background:radial-gradient(circle at 15% 20%, rgba(239,68,68,.4), transparent 60%), radial-gradient(circle at 85% 75%, rgba(239,68,68,.25), transparent 55%), repeating-linear-gradient(45deg,rgba(255,255,255,.08)0,rgba(255,255,255,.08)2px,transparent 2px,transparent 6px); filter:blur(0); opacity:.6;}
.services-cta .btn-danger {background:linear-gradient(90deg,#dc2626,#b91c1c); border:none; box-shadow:0 6px 18px -4px rgba(220,38,38,.4);} 
.services-cta .btn-danger:hover {background:linear-gradient(90deg,#b91c1c,#991b1b); transform:translateY(-2px);} 
.services-cta .btn-outline-light {backdrop-filter:blur(6px); border:2px solid rgba(255,255,255,.4);} 
.services-cta .btn-outline-light:hover {background:rgba(255,255,255,.12);}

/* Animations helper classes (for JS injection later) */
.fade-in {animation:fadeIn .8s ease forwards; opacity:0;}

/* Dynamic rotating word */
#dynamicWord {position:relative; display:inline-block; font-weight:600; color:#dc2626; min-width:100px;}
#dynamicWord.fade-out {animation:wordOut .4s forwards ease;}
#dynamicWord.fade-in {animation:wordIn .4s forwards ease;}
@keyframes wordOut {to{opacity:0; transform:translateY(-40%);}}
@keyframes wordIn {from{opacity:0; transform:translateY(40%);} to{opacity:1; transform:translateY(0);}}

/* Responsive tweaks */
@media (max-width:575.98px){
  .hero-title {font-size:2.25rem;}
  .display-3 {font-size:2.75rem;}
}

/* Problem Section */
.problem-section {background:linear-gradient(145deg,#ffffff,#f8fafc,#eff6ff);}
.problem-section .problem-bg::before {content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(107,114,128,.08) 1px,transparent 1px),linear-gradient(rgba(107,114,128,.08) 1px,transparent 1px); background-size:50px 50px; opacity:.35;}
.problem-section .problem-bg::after {content:""; position:absolute; inset:0; background:radial-gradient(circle at 12% 20%, rgba(239,68,68,.18), transparent 60%), radial-gradient(circle at 78% 80%, rgba(59,130,246,.15), transparent 55%), radial-gradient(circle at 65% 40%, rgba(6,182,212,.18), transparent 65%); mix-blend-mode:normal; opacity:.55;}
.problem-badge, .solution-badge {background:#f8fafc; border:1px solid #e2e8f0; font-size:.65rem; letter-spacing:.1em;}
.quote-card {transition:box-shadow .4s, transform .4s;}
.quote-card:hover {box-shadow:0 18px 40px -15px rgba(0,0,0,.12)!important; transform:translateY(-4px);} 
.quote-card blockquote {line-height:1.5;}
.icon-box {width:40px; height:40px; font-size:1.1rem;}
.solution-card {position:relative; overflow:hidden;}
.solution-card::before {content:""; position:absolute; inset:0; background:linear-gradient(135deg,#f1f5f9,#ffffff,#f0f9ff); opacity:.9;}
.solution-card::after {content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(59,130,246,.08),rgba(6,182,212,.08)); mix-blend-mode:overlay;}
.solution-card > * {position:relative; z-index:2;}
.step-icon {width:36px;height:36px;font-size:1rem;}
.problem-section .display-6 {font-size:2.5rem;}
@media (min-width:768px){.problem-section .display-6 {font-size:3rem;}}



/* =============================== */
/* Industries Section              */
/* =============================== */
.industries-section {background:#fff;}
.industries-bg::before {content:""; position:absolute; inset:0; background:linear-gradient(145deg,#ffffff,#f8fafc,#f1f5f9);} 
.industries-bg::after {content:""; position:absolute; inset:0; background:radial-gradient(circle at 25% 20%, rgba(239,68,68,.12), transparent 60%), radial-gradient(circle at 75% 80%, rgba(59,130,246,.12), transparent 55%); opacity:.45;}
#industriesGrid .industry-card {transition:all .55s; box-shadow:0 6px 18px -10px rgba(0,0,0,.06);} 
#industriesGrid .industry-card:hover {transform:translateY(-6px); box-shadow:0 20px 50px -20px rgba(0,0,0,.15);} 
#industriesGrid .industry-card h3 {color:#111827;}
#industriesGrid .industry-card p {color:#6b7280;}
@media (max-width:575.98px){
  #industriesGrid .industry-card {padding:1.25rem;}
}

