/* ===========================================================
   BizDatos Home / Parallax 2026
   Colores basados en el logotipo: azul profundo + cian.
   Se carga después de public.css y se limita a .home-page.
   =========================================================== */
:root {
    --bd-navy-950: #041425;
    --bd-navy-900: #071d35;
    --bd-navy-850: #0a2948;
    --bd-navy-800: #0c3763;
    --bd-blue-700: #0f5d9d;
    --bd-blue-600: #087fc0;
    --bd-cyan-500: #08a9df;
    --bd-cyan-400: #21c1ee;
    --bd-cyan-300: #5bd8f7;
    --bd-ice: #eefaff;
    --bd-surface: #f6fbfe;
    --bd-ink: #10243a;
    --bd-muted-2: #64788d;
    --bd-line: rgba(13, 83, 136, .14);
    --bd-shadow: 0 24px 70px rgba(4, 20, 37, .12);
}

html { scroll-behavior: smooth; }

.home-page {
    background: #fff;
    color: var(--bd-ink);
    overflow-x: hidden;
}

.home-page::selection { background: var(--bd-cyan-400); color: var(--bd-navy-950); }

/* NAV */
.home-navbar {
    --bs-navbar-color: rgba(255,255,255,.78);
    --bs-navbar-hover-color: #fff;
    --bs-navbar-active-color: #fff;
    padding: 14px 0;
    border-bottom: 1px solid rgba(255,255,255,.08);
    background: rgba(4,20,37,.22);
    backdrop-filter: blur(16px);
    transition: padding .3s ease, background .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.home-navbar.is-scrolled {
    padding: 9px 0;
    background: rgba(4,20,37,.92);
    border-color: rgba(91,216,247,.12);
    box-shadow: 0 12px 30px rgba(0,0,0,.16);
}
.home-navbar .nav-link { font-weight: 650; font-size: .94rem; padding: .65rem .75rem !important; }
.home-navbar .nav-shop-link {
    display: inline-flex; align-items: center; gap: .38rem;
    border: 1px solid rgba(91,216,247,.34); border-radius: 9px;
    background: rgba(8,169,223,.10); color: #fff;
    margin: 0 .08rem;
}
.home-navbar .nav-shop-link:hover {
    background: rgba(8,169,223,.22); border-color: rgba(91,216,247,.68); color: #fff;
}
.brand-shell {
    width: 44px; height: 44px; border-radius: 13px; overflow: hidden; background: #fff;
    display: inline-grid; place-items: center; box-shadow: 0 10px 28px rgba(0,0,0,.14);
}
.brand-shell .brand-logo { width: 100%; height: 100%; object-fit: cover; }
.brand-wordmark { font-weight: 850; letter-spacing: -.03em; font-size: 1.15rem; }
.nav-store-btn {
    border: 1px solid rgba(91,216,247,.36); color: #fff; background: rgba(8,169,223,.13);
    border-radius: 999px; padding: .62rem 1rem; font-weight: 800;
}
.nav-store-btn:hover { color: var(--bd-navy-950); background: var(--bd-cyan-400); border-color: var(--bd-cyan-400); }

/* HERO */
.parallax-hero {
    position: relative; min-height: 100svh; overflow: hidden; color: #fff;
    background:
        radial-gradient(circle at 76% 30%, rgba(8,169,223,.24), transparent 33%),
        radial-gradient(circle at 15% 78%, rgba(15,93,157,.25), transparent 35%),
        linear-gradient(135deg, var(--bd-navy-950) 0%, var(--bd-navy-900) 45%, #0a3157 100%);
}
.hero-container { position: relative; z-index: 4; }
.hero-grid, .parallax-band-grid, .contact-stage-grid {
    position: absolute; inset: -80px; pointer-events: none;
    background-image:
        linear-gradient(rgba(91,216,247,.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(91,216,247,.055) 1px, transparent 1px);
    background-size: 54px 54px;
    mask-image: linear-gradient(to bottom, rgba(0,0,0,.8), transparent 92%);
}
.hero-grid::after {
    content: ""; position: absolute; inset: 0;
    background: linear-gradient(115deg, transparent 0 42%, rgba(33,193,238,.045) 42.3% 42.6%, transparent 42.9% 100%);
}
.parallax-layer { will-change: transform; }
.hero-orb { position: absolute; border-radius: 50%; filter: blur(1px); pointer-events: none; }
.hero-orb-1 {
    width: 520px; height: 520px; right: -130px; top: 9%;
    background: radial-gradient(circle at 35% 35%, rgba(91,216,247,.24), rgba(8,169,223,.04) 58%, transparent 72%);
    border: 1px solid rgba(91,216,247,.08);
}
.hero-orb-2 {
    width: 300px; height: 300px; left: -120px; bottom: 7%;
    background: radial-gradient(circle at center, rgba(15,93,157,.32), transparent 70%);
}
.hero-data-dots {
    position: absolute; width: 260px; height: 260px; left: 48%; top: 12%; opacity: .28;
    background-image: radial-gradient(circle, var(--bd-cyan-300) 1.4px, transparent 1.7px);
    background-size: 18px 18px;
    mask-image: radial-gradient(circle, #000 15%, transparent 70%);
}
.hero-kicker {
    display: inline-flex; align-items: center; gap: 9px; margin-bottom: 22px; padding: 8px 13px;
    border: 1px solid rgba(91,216,247,.24); border-radius: 999px; background: rgba(8,169,223,.08);
    color: #c9f5ff; font-size: .78rem; font-weight: 850; letter-spacing: .11em; text-transform: uppercase;
}
.kicker-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--bd-cyan-400); box-shadow: 0 0 0 6px rgba(33,193,238,.12); }
.parallax-hero h1 {
    max-width: 780px; margin: 0; font-size: clamp(3rem, 6.2vw, 6rem); line-height: .94; letter-spacing: -.06em; font-weight: 880;
    text-wrap: balance;
}
.parallax-hero h1::after {
    content: ""; display: block; width: 110px; height: 4px; margin-top: 26px; border-radius: 999px;
    background: linear-gradient(90deg, var(--bd-cyan-400), transparent);
}
.hero-lead { max-width: 690px; margin: 25px 0 0; color: rgba(236,248,255,.76); font-size: clamp(1.08rem, 1.5vw, 1.3rem); line-height: 1.7; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.btn-bd-primary, .btn-bd-dark {
    border-radius: 14px; font-weight: 800; border: 1px solid transparent; padding: .9rem 1.25rem;
    transition: transform .22s ease, box-shadow .22s ease, background .22s ease;
}
.btn-bd-primary { color: var(--bd-navy-950); background: linear-gradient(135deg, var(--bd-cyan-300), var(--bd-cyan-400)); box-shadow: 0 14px 34px rgba(8,169,223,.22); }
.btn-bd-primary:hover { color: var(--bd-navy-950); transform: translateY(-2px); box-shadow: 0 18px 40px rgba(8,169,223,.32); }
.btn-bd-ghost { color: #fff; border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.055); border-radius: 14px; padding: .9rem 1.25rem; font-weight: 750; }
.btn-bd-ghost:hover { color: #fff; background: rgba(255,255,255,.10); border-color: rgba(255,255,255,.30); }
.hero-trustline { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 28px; color: rgba(223,243,255,.68); font-size: .86rem; }
.hero-trustline span { display: inline-flex; align-items: center; gap: 7px; }
.hero-trustline i { color: var(--bd-cyan-400); }

/* Dashboard visual */
.intelligence-stage { position: relative; max-width: 650px; margin-inline: auto; perspective: 1000px; }
.stage-halo {
    position: absolute; inset: 8% -8%; border-radius: 50%; filter: blur(55px);
    background: radial-gradient(circle, rgba(8,169,223,.20), transparent 68%); pointer-events: none;
}
.intelligence-console {
    position: relative; z-index: 2; overflow: hidden; padding: 24px; border-radius: 30px;
    border: 1px solid rgba(115,220,247,.20); background: linear-gradient(145deg, rgba(10,42,73,.88), rgba(4,20,37,.78));
    box-shadow: 0 42px 90px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.06);
    backdrop-filter: blur(18px); transform: rotateY(-4deg) rotateX(2deg);
}
.intelligence-console::before {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background: linear-gradient(110deg, transparent 0 35%, rgba(91,216,247,.06) 45%, transparent 55% 100%);
    transform: translateX(-100%); animation: consoleShine 7s ease-in-out infinite;
}
@keyframes consoleShine { 0%,55%{ transform:translateX(-100%)} 80%,100%{transform:translateX(100%)} }
.console-topbar { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; padding-bottom: 18px; border-bottom: 1px solid rgba(255,255,255,.08); }
.console-topbar > div { display: grid; gap: 3px; }
.console-eyebrow { color: var(--bd-cyan-300); font-size: .68rem; letter-spacing: .13em; font-weight: 900; }
.console-topbar strong { font-size: .98rem; }
.live-pill { display:inline-flex; align-items:center; gap:7px; padding:6px 9px; border-radius:999px; background:rgba(33,193,238,.08); border:1px solid rgba(33,193,238,.16); color:#bdf4ff; font-size:.72rem; font-weight:750; }
.live-pill span { width:7px; height:7px; border-radius:50%; background:#4be6a9; box-shadow:0 0 0 4px rgba(75,230,169,.12); animation:pulseLive 1.8s infinite; }
@keyframes pulseLive { 50%{ box-shadow:0 0 0 8px rgba(75,230,169,0)} }
.console-kpis { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin: 18px 0; }
.console-kpi { padding: 14px; border-radius: 16px; background: rgba(255,255,255,.035); border: 1px solid rgba(255,255,255,.07); }
.console-kpi > span { display:block; color:rgba(224,244,255,.56); font-size:.72rem; }
.console-kpi strong { display:block; margin:3px 0; font-size:1.5rem; letter-spacing:-.04em; }
.console-kpi small { color:#a8dff0; font-size:.65rem; }
.console-chart { padding: 15px; border-radius: 18px; border:1px solid rgba(255,255,255,.08); background:rgba(0,0,0,.12); }
.chart-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.chart-head > div { display:grid; gap:1px; }
.chart-head span { color:rgba(224,244,255,.56); font-size:.7rem; }
.chart-head strong { font-size:.82rem; }
.chart-chip { padding:4px 7px; border-radius:8px; background:rgba(8,169,223,.12); color:#baf1ff !important; }
.chart-bars { height: 130px; display:flex; gap:9px; align-items:end; padding-top:16px; }
.chart-bars span { flex:1; height:var(--h); min-height:20px; border-radius:7px 7px 3px 3px; background:linear-gradient(to top, rgba(15,93,157,.58), var(--bd-cyan-400)); box-shadow:0 -8px 20px rgba(33,193,238,.07); transform-origin:bottom; animation:barGrow 1.2s ease both; }
.chart-bars span:nth-child(2){animation-delay:.08s}.chart-bars span:nth-child(3){animation-delay:.16s}.chart-bars span:nth-child(4){animation-delay:.24s}.chart-bars span:nth-child(5){animation-delay:.32s}.chart-bars span:nth-child(6){animation-delay:.4s}.chart-bars span:nth-child(7){animation-delay:.48s}
@keyframes barGrow { from{ transform:scaleY(.12); opacity:.2 } }
.console-automation { display:grid; grid-template-columns:auto 1fr auto 1fr auto 1fr auto; align-items:center; gap:8px; margin-top:17px; }
.automation-node { display:grid; justify-items:center; gap:4px; color:rgba(221,242,252,.62); font-size:.64rem; }
.automation-node i { width:34px; height:34px; display:grid; place-items:center; border-radius:11px; border:1px solid rgba(91,216,247,.13); background:rgba(8,169,223,.055); color:var(--bd-cyan-300); }
.automation-node.is-active i { background:rgba(33,193,238,.15); box-shadow:0 0 22px rgba(33,193,238,.12); }
.automation-line { height:1px; background:rgba(91,216,247,.12); overflow:hidden; }
.automation-line span { display:block; width:32%; height:100%; background:var(--bd-cyan-400); animation:flowLine 2.8s linear infinite; }
@keyframes flowLine { from{transform:translateX(-150%)} to{transform:translateX(450%)} }
.floating-insight { position:absolute; z-index:3; display:flex; align-items:center; gap:10px; min-width:190px; padding:12px 14px; border-radius:15px; border:1px solid rgba(91,216,247,.18); background:rgba(7,29,53,.88); box-shadow:0 18px 45px rgba(0,0,0,.23); backdrop-filter:blur(13px); }
.floating-insight > i { width:34px; height:34px; display:grid; place-items:center; border-radius:10px; color:var(--bd-cyan-300); background:rgba(8,169,223,.12); }
.floating-insight div { display:grid; }
.floating-insight span { color:rgba(223,244,255,.55); font-size:.64rem; }
.floating-insight strong { font-size:.74rem; }
.insight-a { right:-20px; top:18%; }
.insight-b { left:-45px; bottom:14%; }
.scroll-indicator { position:absolute; z-index:6; bottom:24px; left:50%; transform:translateX(-50%); display:grid; justify-items:center; gap:6px; color:rgba(229,247,255,.56); text-decoration:none; font-size:.67rem; letter-spacing:.14em; text-transform:uppercase; }
.scroll-indicator span { width:1px; height:38px; background:linear-gradient(to bottom, var(--bd-cyan-400), transparent); animation:scrollDrop 1.8s ease-in-out infinite; transform-origin:top; }
@keyframes scrollDrop { 50% { transform:scaleY(.55); opacity:.5; } }

/* SECTIONS */
.section-home { position:relative; padding: 108px 0; }
.section-light { background:#fff; }
.section-soft { background:linear-gradient(180deg, #f6fbfe 0%, #eef8fd 100%); }
.section-eyebrow { display:inline-flex; align-items:center; gap:8px; margin-bottom:13px; color:var(--bd-blue-600); font-size:.74rem; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.section-eyebrow::before { content:""; width:24px; height:2px; border-radius:2px; background:linear-gradient(90deg,var(--bd-cyan-400),var(--bd-blue-600)); }
.section-eyebrow.on-dark { color:var(--bd-cyan-300); }
.display-title { margin:0; max-width:900px; font-size:clamp(2.3rem,4.5vw,4.5rem); line-height:1.02; letter-spacing:-.055em; font-weight:870; text-wrap:balance; color:var(--bd-navy-950); }
.section-intro { color:var(--bd-muted-2); font-size:1.06rem; line-height:1.7; }
.section-heading-center { max-width:780px; margin:0 auto 50px; text-align:center; }
.section-heading-center .section-eyebrow { justify-content:center; }

.solution-card { position:relative; height:100%; min-height:320px; padding:28px; overflow:hidden; border-radius:24px; border:1px solid var(--bd-line); background:#fff; box-shadow:0 16px 45px rgba(7,29,53,.055); transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.solution-card::before { content:""; position:absolute; width:180px; height:180px; right:-90px; top:-90px; border-radius:50%; background:radial-gradient(circle, rgba(33,193,238,.15), transparent 70%); transition:transform .4s ease; }
.solution-card:hover { transform:translateY(-8px); box-shadow:0 28px 65px rgba(7,29,53,.11); border-color:rgba(8,169,223,.28); }
.solution-card:hover::before { transform:scale(1.25); }
.solution-icon { width:54px; height:54px; display:grid; place-items:center; margin-bottom:28px; border-radius:16px; color:var(--bd-cyan-500); font-size:1.35rem; background:linear-gradient(145deg,#eefbff,#e2f5fd); border:1px solid rgba(8,169,223,.11); }
.solution-card > span { color:var(--bd-blue-600); font-size:.68rem; letter-spacing:.12em; font-weight:900; }
.solution-card h3 { margin:8px 0 12px; font-size:1.45rem; letter-spacing:-.035em; font-weight:850; color:var(--bd-navy-950); }
.solution-card p { color:var(--bd-muted-2); line-height:1.65; }
.solution-line { position:absolute; left:28px; right:28px; bottom:22px; height:2px; background:linear-gradient(90deg,var(--bd-cyan-400),rgba(33,193,238,0)); transform:scaleX(.32); transform-origin:left; transition:transform .35s ease; }
.solution-card:hover .solution-line { transform:scaleX(1); }

/* PARALLAX BAND */
.parallax-band { position:relative; overflow:hidden; padding:125px 0; color:#fff; background:linear-gradient(135deg,var(--bd-navy-950),#0a3157 68%,#075d86 140%); }
.parallax-band-grid { opacity:.8; mask-image:linear-gradient(to right,transparent,#000 25%,#000 75%,transparent); }
.parallax-band-glow { position:absolute; width:600px; height:600px; right:-220px; top:-170px; border-radius:50%; background:radial-gradient(circle,rgba(33,193,238,.20),transparent 70%); }
.text-link-light { display:inline-flex; align-items:center; gap:8px; margin-top:8px; color:#e4faff; font-weight:800; text-decoration:none; }
.text-link-light:hover { color:var(--bd-cyan-300); }
.data-flow { display:grid; gap:0; max-width:650px; margin-left:auto; padding:28px; border-radius:28px; border:1px solid rgba(91,216,247,.16); background:rgba(255,255,255,.045); backdrop-filter:blur(12px); box-shadow:0 35px 80px rgba(0,0,0,.2); }
.flow-step { position:relative; display:grid; grid-template-columns:38px 50px 1fr; align-items:center; gap:14px; padding:13px 12px; border-radius:15px; transition:background .2s ease; }
.flow-step:hover { background:rgba(255,255,255,.045); }
.flow-step > span { color:rgba(203,242,252,.35); font-size:.69rem; font-weight:900; }
.flow-icon { width:46px; height:46px; display:grid; place-items:center; border-radius:14px; color:var(--bd-cyan-300); background:rgba(8,169,223,.10); border:1px solid rgba(91,216,247,.13); }
.flow-step > div:last-child { display:grid; gap:2px; }
.flow-step strong { font-size:1.05rem; }
.flow-step small { color:rgba(220,242,251,.52); }
.flow-connector { height:24px; margin-left:72px; border-left:1px dashed rgba(91,216,247,.22); }
.flow-connector span { display:block; width:3px; height:7px; margin-left:-2px; border-radius:3px; background:var(--bd-cyan-400); animation:flowDown 2s ease-in-out infinite; }
@keyframes flowDown { from{transform:translateY(-2px);opacity:.2} 60%{opacity:1} to{transform:translateY(19px);opacity:.1} }

/* ABOUT */
.about-copy { margin-top:24px; color:var(--bd-muted-2); font-size:1.08rem; line-height:1.8; }
.about-copy p:last-child { margin-bottom:0; }
.about-pillars { display:flex; flex-wrap:wrap; gap:10px; margin-top:26px; }
.about-pillars span { display:inline-flex; gap:7px; align-items:center; padding:9px 11px; border-radius:11px; background:var(--bd-surface); border:1px solid var(--bd-line); color:var(--bd-blue-700); font-size:.82rem; font-weight:750; }
.vision-stack { position:relative; min-height:470px; }
.vision-card { position:absolute; width:78%; min-height:310px; padding:34px; border-radius:28px; color:#fff; background:linear-gradient(145deg,var(--bd-navy-900),var(--bd-blue-700)); box-shadow:var(--bd-shadow); overflow:hidden; }
.vision-card::after { content:""; position:absolute; width:240px; height:240px; right:-100px; bottom:-110px; border-radius:50%; border:1px solid rgba(91,216,247,.20); box-shadow:0 0 0 32px rgba(91,216,247,.035),0 0 0 64px rgba(91,216,247,.022); }
.vision-card-alt { right:0; bottom:0; background:linear-gradient(145deg,#087fb2,#06a7db); }
.vision-number { position:absolute; top:24px; right:26px; color:rgba(255,255,255,.17); font-size:4.5rem; line-height:1; font-weight:900; letter-spacing:-.08em; }
.vision-card > span { position:relative; z-index:1; color:#bff2ff; font-size:.69rem; letter-spacing:.13em; font-weight:900; }
.vision-card h3 { position:relative; z-index:1; margin:48px 0 13px; font-size:2.3rem; font-weight:850; letter-spacing:-.05em; }
.vision-card p { position:relative; z-index:1; max-width:430px; color:rgba(255,255,255,.74); line-height:1.7; }

/* CONTENT CARDS */
.home-profile-card, .home-product-card, .home-news-card, .testimonial-card { height:100%; overflow:hidden; border-radius:24px; border:1px solid var(--bd-line); background:#fff; box-shadow:0 14px 42px rgba(7,29,53,.055); transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease; }
.home-profile-card:hover, .home-product-card:hover, .home-news-card:hover, .testimonial-card:hover { transform:translateY(-7px); box-shadow:0 25px 60px rgba(7,29,53,.10); border-color:rgba(8,169,223,.24); }
.profile-image-wrap { height:290px; overflow:hidden; background:var(--bd-surface); }
.profile-image-wrap img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.home-profile-card:hover img { transform:scale(1.035); }
.home-profile-card span { color:var(--bd-cyan-500); font-size:.72rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.home-profile-card h3, .home-product-card h3, .home-news-card h3 { margin:6px 0 10px; color:var(--bd-navy-950); font-weight:850; letter-spacing:-.035em; }
.home-profile-card p, .home-product-card p, .home-news-card p { color:var(--bd-muted-2); line-height:1.65; }
.testimonial-card { position:relative; padding:30px; }
.quote-icon { position:absolute; right:24px; top:16px; color:rgba(8,169,223,.09); font-size:4rem; }
.testimonial-card > p { position:relative; z-index:1; min-height:130px; color:#3f556a; line-height:1.75; }
.testimonial-brand { display:flex; align-items:center; gap:14px; padding-top:20px; border-top:1px solid var(--bd-line); }
.testimonial-brand img { width:74px; height:48px; object-fit:contain; }
.testimonial-brand > div { display:grid; }
.testimonial-brand strong { color:var(--bd-navy-950); font-size:.9rem; }
.testimonial-brand a { color:var(--bd-blue-600); text-decoration:none; font-size:.78rem; font-weight:750; }
.product-visual, .news-image { display:block; height:250px; overflow:hidden; background:linear-gradient(145deg,#f8fcfe,#eef7fb); }
.product-visual img { width:100%; height:100%; object-fit:contain; padding:22px; transition:transform .45s ease; }
.home-product-card:hover .product-visual img { transform:scale(1.035); }
.product-tag { color:var(--bd-blue-600); font-size:.67rem; letter-spacing:.13em; font-weight:900; }
.product-link { display:inline-flex; align-items:center; gap:7px; color:var(--bd-blue-600); text-decoration:none; font-weight:850; }
.product-link:hover { color:var(--bd-cyan-500); gap:10px; }
.btn-bd-dark { color:#fff; background:var(--bd-navy-900); }
.btn-bd-dark:hover { color:#fff; background:var(--bd-blue-700); transform:translateY(-2px); }
.news-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.home-news-card:hover .news-image img { transform:scale(1.045); }
.news-meta { display:flex; justify-content:space-between; gap:12px; margin-bottom:10px; color:#7890a3; font-size:.72rem; }
.home-news-card h3 a { color:inherit; text-decoration:none; }
.home-empty { padding:30px; border:1px dashed var(--bd-line); border-radius:20px; color:var(--bd-muted-2); text-align:center; }

/* CONTACT */
.contact-stage { position:relative; overflow:hidden; padding:110px 0; background:linear-gradient(135deg,#06182b,#082d4f); color:#fff; }
.contact-stage-grid { opacity:.4; mask-image:linear-gradient(to bottom,transparent,#000 25%,#000 80%,transparent); }
.contact-panel { position:relative; padding:50px; overflow:hidden; border-radius:32px; border:1px solid rgba(91,216,247,.17); background:linear-gradient(135deg,rgba(8,169,223,.11),rgba(255,255,255,.035)); box-shadow:0 35px 90px rgba(0,0,0,.22); backdrop-filter:blur(12px); }
.contact-panel::after { content:""; position:absolute; width:420px; height:420px; right:-190px; top:-220px; border-radius:50%; background:radial-gradient(circle,rgba(33,193,238,.20),transparent 70%); pointer-events:none; }
.contact-panel h2 { position:relative; z-index:1; max-width:820px; margin:0 0 15px; font-size:clamp(2rem,3.8vw,3.6rem); line-height:1.04; letter-spacing:-.05em; font-weight:850; }
.contact-panel p { position:relative; z-index:1; color:rgba(230,247,255,.64); font-size:1.03rem; }
.contact-actions { position:relative; z-index:2; display:grid; gap:10px; }
.btn-contact-primary, .btn-contact-secondary { display:flex; align-items:center; justify-content:center; gap:9px; padding:13px 16px; border-radius:13px; font-weight:800; }
.btn-contact-primary { color:var(--bd-navy-950); background:var(--bd-cyan-400); border:1px solid var(--bd-cyan-400); }
.btn-contact-primary:hover { color:var(--bd-navy-950); background:var(--bd-cyan-300); border-color:var(--bd-cyan-300); }
.btn-contact-secondary { color:#fff; background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.15); }
.btn-contact-secondary:hover { color:#fff; background:rgba(255,255,255,.09); }
.contact-info-row { position:relative; z-index:1; display:flex; flex-wrap:wrap; gap:24px; margin-top:34px; padding-top:22px; border-top:1px solid rgba(255,255,255,.10); color:rgba(225,245,254,.62); font-size:.85rem; }
.contact-info-row span { display:inline-flex; align-items:center; gap:7px; }
.contact-info-row i { color:var(--bd-cyan-300); }

/* FOOTER */
.home-footer { padding:72px 0 24px; background:#03111f; color:#fff; border-top:1px solid rgba(91,216,247,.08); }
.footer-main-grid { display:grid; grid-template-columns:1.5fr .7fr 1.25fr .8fr; gap:50px; }
.footer-logo-line { display:flex; align-items:center; gap:12px; margin-bottom:18px; }
.footer-logo-line strong { font-size:1.25rem; letter-spacing:-.03em; }
.footer-brand-shell { width:48px; height:48px; }
.footer-brand-block > p { max-width:430px; color:rgba(224,243,252,.52); line-height:1.7; }
.footer-socials { display:flex; gap:8px; margin-top:18px; }
.footer-socials a { width:38px; height:38px; display:grid; place-items:center; border-radius:11px; color:#dff8ff; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.07); transition:.2s ease; }
.footer-socials a:hover { color:var(--bd-navy-950); background:var(--bd-cyan-400); border-color:var(--bd-cyan-400); transform:translateY(-2px); }
.footer-column { display:flex; flex-direction:column; align-items:flex-start; gap:10px; }
.footer-heading { margin-bottom:8px; color:#a9dcea; font-size:.7rem; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.footer-column > a:not(.footer-tool-link) { color:rgba(229,246,253,.62); text-decoration:none; font-size:.88rem; }
.footer-column > a:not(.footer-tool-link):hover { color:var(--bd-cyan-300); }
.footer-tools-column { gap:8px; }
.footer-tool-link { width:100%; display:grid; grid-template-columns:34px 1fr auto; align-items:center; gap:10px; padding:10px; border-radius:13px; color:#fff; text-decoration:none; background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.06); transition:.2s ease; }
.footer-tool-link > i:first-child { width:34px; height:34px; display:grid; place-items:center; border-radius:10px; color:var(--bd-cyan-300); background:rgba(8,169,223,.10); }
.footer-tool-link > i:last-child { color:rgba(229,246,253,.35); }
.footer-tool-link span { display:grid; }
.footer-tool-link strong { font-size:.83rem; }
.footer-tool-link small { color:rgba(229,246,253,.42); font-size:.68rem; }
.footer-tool-link:hover { color:#fff; background:rgba(8,169,223,.08); border-color:rgba(91,216,247,.16); transform:translateX(3px); }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; margin-top:50px; padding-top:22px; border-top:1px solid rgba(255,255,255,.07); color:rgba(219,241,250,.38); font-size:.75rem; }
.footer-signature { display:flex; align-items:center; gap:9px; }
.footer-signature > span { width:24px; height:1px; background:var(--bd-cyan-500); }
.home-floating-store { right:20px; bottom:20px; min-width:auto; width:auto; height:48px; gap:8px; padding:0 17px; border:1px solid rgba(255,255,255,.25); background:linear-gradient(135deg,var(--bd-blue-600),var(--bd-cyan-500)); box-shadow:0 16px 36px rgba(8,127,192,.30); }

/* REVEALS */
.reveal-up, .reveal-scale { opacity:0; transition:opacity .75s ease var(--reveal-delay,0ms), transform .75s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms); }
.reveal-up { transform:translateY(28px); }
.reveal-scale { transform:translateY(14px) scale(.97); }
.reveal-up.is-visible, .reveal-scale.is-visible { opacity:1; transform:none; }

@media (max-width: 1199px) {
    .floating-insight { display:none; }
    .intelligence-console { transform:none; }
    .footer-main-grid { grid-template-columns:1.25fr .7fr 1.2fr; }
    .footer-main-grid .footer-column:last-child { grid-column:2 / 4; flex-direction:row; flex-wrap:wrap; align-content:flex-start; }
    .footer-main-grid .footer-column:last-child .footer-heading { width:100%; }
}

@media (max-width: 991px) {
    .home-navbar { background:rgba(4,20,37,.90); }
    .home-navbar .navbar-collapse { padding:14px 0 4px; }
    .parallax-hero .min-vh-100 { min-height:auto !important; padding-top:130px !important; padding-bottom:100px !important; }
    .parallax-hero h1 { font-size:clamp(3rem,11vw,5.1rem); }
    .intelligence-stage { margin-top:20px; }
    .section-home, .parallax-band { padding:82px 0; }
    .vision-stack { min-height:520px; margin-top:15px; }
    .footer-main-grid { grid-template-columns:1fr 1fr; }
    .footer-main-grid .footer-column:last-child { grid-column:auto; flex-direction:column; }
    .footer-main-grid .footer-column:last-child .footer-heading { width:auto; }
    .scroll-indicator { display:none; }
}

@media (max-width: 767px) {
    .parallax-hero .min-vh-100 { padding-top:115px !important; }
    .parallax-hero h1 { font-size:clamp(2.7rem,12vw,4.1rem); }
    .hero-lead { font-size:1rem; }
    .hero-trustline { gap:10px 16px; }
    .intelligence-console { padding:16px; border-radius:22px; }
    .console-kpis { grid-template-columns:1fr; }
    .console-kpi { display:grid; grid-template-columns:1fr auto; align-items:center; }
    .console-kpi > span { grid-column:1; }.console-kpi strong{grid-column:2;grid-row:1/3}.console-kpi small{grid-column:1;}
    .chart-bars { height:100px; gap:5px; }
    .console-automation { gap:4px; }
    .automation-node span { display:none; }
    .automation-node i { width:30px; height:30px; }
    .section-home, .parallax-band { padding:68px 0; }
    .display-title { font-size:clamp(2.1rem,9.6vw,3.2rem); }
    .solution-card { min-height:0; }
    .vision-stack { min-height:auto; display:grid; gap:15px; }
    .vision-card { position:relative; width:100%; min-height:260px; }
    .vision-card-alt { right:auto; bottom:auto; }
    .profile-image-wrap, .product-visual, .news-image { height:230px; }
    .contact-stage { padding:68px 0; }
    .contact-panel { padding:28px 20px; border-radius:24px; }
    .footer-main-grid { grid-template-columns:1fr; gap:34px; }
    .footer-bottom { flex-direction:column; }
    .home-floating-store span { display:none; }
    .home-floating-store { width:48px; padding:0; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior:auto; }
    *, *::before, *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
    [data-parallax] { transform:none !important; }
    .reveal-up, .reveal-scale { opacity:1 !important; transform:none !important; }
}
