/* /assets/products.css
 * Shared CSS for 9 pages.
 * Hash: 67241d22 | Version: 20260510 | DO NOT EDIT INLINE.
 */

:root{
  --ink:#070E1C;--ink2:#0E1A30;--ink3:#1B2B47;
  --blue:#1549C8;--blue2:#1E5AE8;--blue-p:#EEF3FF;--blue-d:#0D35A0;
  --green:#00A878;--green-l:#E8FDF6;
  --white:#fff;--off:#F5F8FC;--g50:#F8FAFD;--g100:#EEF2F8;
  --g200:#DDE6F2;--g300:#C3CFDF;--g400:#8A9AB4;--g600:#4F627A;--g800:#1E2D40;
  --fh:'Bricolage Grotesque',sans-serif;--fb:'DM Sans',sans-serif;
  --r:8px;--rl:14px;--rxl:24px;
  --sh:0 1px 3px rgba(7,14,28,.08),0 4px 16px rgba(7,14,28,.06);
  --shl:0 4px 24px rgba(7,14,28,.10),0 16px 48px rgba(7,14,28,.08);
  --nh:68px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--fb);background:var(--off);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}
button{cursor:pointer;font-family:var(--fb)}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--nh);display:flex;align-items:center;justify-content:space-between;padding:0 48px;background:var(--ink);border-bottom:1px solid rgba(255,255,255,.07);transition:box-shadow .3s}
.nav.scrolled{box-shadow:0 2px 32px rgba(0,0,0,.4)}
.nav-logo{display:flex;align-items:center;gap:11px}
.nav-logo-mark{width:34px;height:34px;border-radius:7px;background:var(--blue);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.nav-logo-mark svg{width:18px;height:18px;stroke:#fff;fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.nav-logo-name{font-family:var(--fh);font-weight:700;font-size:17px;color:#fff;letter-spacing:-.3px}
.nav-logo-name em{font-style:normal;color:rgba(255,255,255,.7);font-weight:500}
.nav-center{display:flex;align-items:center;gap:2px}
.nav-item{position:relative}
.nav-a{display:flex;align-items:center;gap:5px;padding:7px 13px;border-radius:6px;color:rgba(255,255,255,.72);font-size:13.5px;font-weight:500;cursor:pointer;transition:all .18s;white-space:nowrap;border:none;background:none;font-family:var(--fb)}
.nav-a:hover,.nav-a.active{color:#fff;background:rgba(255,255,255,.09)}
.nav-a svg{width:11px;height:11px;opacity:.55;transition:transform .2s;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.nav-item:hover>.nav-a svg{transform:rotate(180deg)}
.nav-drop{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(-6px);background:var(--ink2);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:8px;min-width:260px;opacity:0;pointer-events:none;transition:opacity 0s linear,transform 0s linear;box-shadow:0 8px 32px rgba(0,0,0,.4)}
.nav-item:hover .nav-drop{opacity:1;pointer-events:all;transform:translateX(-50%) translateY(0);transition:opacity .18s ease,transform .18s ease}
.nav-drop-section{font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:rgba(255,255,255,.28);padding:8px 12px 4px}
.nav-drop-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;color:rgba(255,255,255,.75);font-size:13.5px;font-weight:500;cursor:pointer;transition:all .15s;text-decoration:none}
.nav-drop-item:hover{background:rgba(255,255,255,.07);color:#fff}
.nav-drop-icon{width:30px;height:30px;border-radius:7px;background:rgba(21,73,200,.22);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.nav-drop-icon svg{width:14px;height:14px;stroke:rgba(150,175,255,.9);fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.nav-right{display:flex;align-items:center;gap:10px}
.btn-ghost{padding:8px 16px;border-radius:7px;border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.8);font-size:13.5px;font-weight:600;background:none;transition:all .18s;display:flex;align-items:center;gap:6px;text-decoration:none}
.btn-ghost:hover{border-color:rgba(255,255,255,.4);color:#fff;background:rgba(255,255,255,.06)}
.btn-ghost svg,.btn-cta svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.btn-cta{padding:9px 20px;border-radius:7px;border:none;background:var(--blue);color:#fff;font-size:13.5px;font-weight:700;transition:all .18s;display:flex;align-items:center;gap:6px;box-shadow:0 1px 4px rgba(21,73,200,.3);text-decoration:none}
.btn-cta:hover{background:var(--blue2);transform:translateY(-1px);box-shadow:0 4px 16px rgba(21,73,200,.55)}
.ham-btn{display:none;background:none;border:none;cursor:pointer;padding:6px;flex-direction:column;gap:5px}
.ham-btn span{display:block;width:21px;height:2px;background:#fff;border-radius:2px;transition:all .25s}
.mob-nav{display:none;position:fixed;inset:0;top:var(--nh);background:var(--ink);z-index:999;padding:16px 24px;flex-direction:column;overflow-y:auto}
.mob-nav.open{display:flex}
.mob-lbl{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.22);padding:18px 0 7px}
.mob-a{display:block;padding:11px 0;color:rgba(255,255,255,.72);font-size:15px;font-weight:500;border-bottom:1px solid rgba(255,255,255,.05);transition:color .15s;text-decoration:none}
.mob-a:hover{color:#fff}
.mob-cta{padding:20px 0;display:flex;flex-direction:column;gap:10px}

/* BUTTONS */
.btn-primary{padding:13px 26px;border-radius:8px;background:var(--blue);color:#fff;font-size:15px;font-weight:700;border:none;display:inline-flex;align-items:center;gap:8px;transition:all .2s;font-family:var(--fb);box-shadow:0 2px 8px rgba(21,73,200,.25);text-decoration:none}
.btn-primary:hover{background:var(--blue2);transform:translateY(-2px);box-shadow:0 8px 24px rgba(21,73,200,.45)}
.btn-primary svg{width:15px;height:15px;stroke:#fff;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.btn-secondary{padding:13px 26px;border-radius:8px;background:transparent;border:1.5px solid rgba(255,255,255,.22);color:#fff;font-size:15px;font-weight:600;display:inline-flex;align-items:center;gap:8px;transition:all .2s;font-family:var(--fb);text-decoration:none}
.btn-secondary:hover{border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.07)}
.btn-outline{padding:13px 26px;border-radius:8px;background:transparent;border:1.5px solid var(--g200);color:var(--ink);font-size:15px;font-weight:600;display:inline-flex;align-items:center;gap:8px;transition:all .2s;font-family:var(--fb);text-decoration:none}
.btn-outline:hover{border-color:var(--blue);color:var(--blue);background:var(--blue-p)}

/* SHARED SECTION STYLES */
.cmp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.cmp-card{display:block;padding:18px 20px;border:1px solid var(--g200);border-radius:14px;background:#fff;transition:all .18s;text-decoration:none;color:inherit}
.cmp-card:hover{border-color:var(--blue);box-shadow:0 4px 16px rgba(21,73,200,.08);transform:translateY(-1px)}
.cmp-name{font-family:var(--fh);font-size:15.5px;font-weight:700;color:var(--ink);margin-bottom:4px;line-height:1.3}
.cmp-card:hover .cmp-name{color:var(--blue)}
.cmp-desc{font-size:13px;color:var(--g600);margin-bottom:10px;line-height:1.5}
.cmp-link{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--blue);letter-spacing:.2px}
@media (max-width:720px){.cmp-grid{grid-template-columns:1fr}}
.wrap{max-width:1200px;margin:0 auto}
section{padding:88px 48px}
.tag{display:inline-flex;align-items:center;gap:6px;background:var(--blue-p);border:1px solid rgba(21,73,200,.15);border-radius:100px;padding:4px 12px;font-size:11.5px;font-weight:700;color:var(--blue);letter-spacing:.6px;text-transform:uppercase;margin-bottom:14px}
.tag svg{width:11px;height:11px;stroke:var(--blue);fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.h2{font-family:var(--fh);font-size:clamp(28px,4vw,44px);font-weight:800;letter-spacing:-1.2px;line-height:1.08;color:var(--ink);margin-bottom:16px}
.h2.white{color:#fff}
.lead{font-size:16.5px;color:var(--g600);line-height:1.72;max-width:560px}
.lead.white{color:rgba(255,255,255,.6)}
.sec-head{margin-bottom:52px}

/* INNER PAGE HERO */
.page-hero{background:linear-gradient(160deg,#050C1A 0%,#07111F 55%,#0A1529 100%);padding:56px 48px 48px;border-bottom:1px solid rgba(255,255,255,.07)}
.page-hero-inner{max-width:1200px;margin:0 auto}
.breadcrumb{display:flex;align-items:center;gap:6px;font-size:13px;color:rgba(255,255,255,.38);margin-bottom:18px;text-decoration:none;transition:color .15s;width:fit-content}
.breadcrumb:hover{color:rgba(255,255,255,.65)}
.breadcrumb svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.page-h1{font-family:var(--fh);font-size:clamp(30px,4vw,50px);font-weight:800;color:#fff;letter-spacing:-.9px;line-height:1.1;margin-bottom:12px}
.page-h1 em{color:#5B9BFF;font-style:normal}
.page-sub{font-size:16.5px;color:rgba(255,255,255,.55);line-height:1.7;max-width:600px}

/* PRODUCT DETAIL LAYOUT */
.pd-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;padding:56px 48px;max-width:1200px;margin:0 auto}
.pd-spec{background:var(--ink);border-radius:22px;padding:36px}
.pd-spec-title{font-size:11px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;color:rgba(150,185,255,.55);margin-bottom:20px;display:flex;align-items:center;gap:7px}
.pd-spec-title svg{width:11px;height:11px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pd-row{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.pd-row:last-of-type{border-bottom:none}
.pd-key{font-size:13.5px;color:rgba(255,255,255,.65)}
.pd-val{font-size:13.5px;font-weight:700;color:#5B9BFF}
.pd-val.green{color:#34D99A}
.qual-list{list-style:none;display:flex;flex-direction:column;gap:11px;margin:18px 0 26px}
.qual-list li{display:flex;align-items:center;gap:10px;font-size:14.5px;color:var(--g800)}
.qual-list li svg{width:15px;height:15px;stroke:var(--green);fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.rec-product{background:var(--blue-p);border:1px solid rgba(21,73,200,.18);border-radius:12px;padding:18px 20px;margin-bottom:24px}
.rec-label{font-size:11px;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:.8px;margin-bottom:6px}
.rec-name{font-size:15px;font-weight:700;color:var(--ink);margin-bottom:4px}
.rec-desc{font-size:13px;color:var(--g600);line-height:1.6}

/* INDUSTRY PAGE STYLES */
.ind-hero-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(21,73,200,.2);border:1px solid rgba(21,73,200,.4);border-radius:100px;padding:5px 14px 5px 8px;font-size:12px;font-weight:600;color:rgba(150,185,255,.9);margin-bottom:18px}
.ind-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:40px 0}
.ind-stat{background:#fff;border:1px solid var(--g200);border-radius:12px;padding:20px;text-align:center;box-shadow:var(--sh)}
.ind-stat-num{font-family:var(--fh);font-size:28px;font-weight:800;color:var(--blue);letter-spacing:-1px;margin-bottom:4px}
.ind-stat-label{font-size:12px;color:var(--g400);font-weight:500}
.ind-use-cases{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:24px 0}
.ind-use{background:var(--g50);border:1px solid var(--g100);border-radius:10px;padding:16px;display:flex;align-items:flex-start;gap:10px}
.ind-use svg{width:16px;height:16px;stroke:var(--blue);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;margin-top:2px}
.ind-use-text{font-size:13.5px;color:var(--g800);font-weight:500}
.ind-faq{border-top:1px solid var(--g200);padding-top:12px;margin-top:12px}
.ind-faq-q{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:6px}
.ind-faq-a{font-size:13.5px;color:var(--g600);line-height:1.65}

/* FORM */
.form-card{background:#fff;border-radius:22px;padding:44px;border:1px solid var(--g200);box-shadow:var(--shl);max-width:660px;margin:0 auto}
.form-title{font-family:var(--fh);font-size:24px;font-weight:800;color:var(--ink);margin-bottom:4px;letter-spacing:-.4px}
.form-sub{font-size:14px;color:var(--g600);margin-bottom:26px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.form-group{display:flex;flex-direction:column;gap:5px}
.form-group.span2{grid-column:1/-1}
.form-lbl{font-size:12.5px;font-weight:600;color:var(--g800);letter-spacing:.2px}
.form-in{padding:11px 13px;border:1.5px solid var(--g200);border-radius:7px;font-size:14px;font-family:var(--fb);color:var(--ink);background:var(--g50);transition:border-color .18s,box-shadow .18s;outline:none;width:100%}
.form-in:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px rgba(21,73,200,.1)}
.form-sel{padding:11px 13px;border:1.5px solid var(--g200);border-radius:7px;font-size:14px;font-family:var(--fb);color:var(--ink);background:var(--g50) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238A9AB4' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 12px center;cursor:pointer;outline:none;appearance:none;width:100%;transition:border-color .18s,box-shadow .18s}
.form-sel:focus{border-color:var(--blue);background-color:#fff;box-shadow:0 0 0 3px rgba(21,73,200,.1)}
.form-ta{padding:11px 13px;border:1.5px solid var(--g200);border-radius:7px;font-size:14px;font-family:var(--fb);color:var(--ink);background:var(--g50);transition:border-color .18s;outline:none;resize:vertical;width:100%;min-height:90px}
.form-ta:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px rgba(21,73,200,.1)}
.form-submit{width:100%;padding:14px;border-radius:8px;background:var(--ink);color:#fff;font-size:15.5px;font-weight:700;border:none;margin-top:6px;transition:all .2s;font-family:var(--fb);display:flex;align-items:center;justify-content:center;gap:8px}
.form-submit:hover{background:var(--blue);transform:translateY(-1px);box-shadow:0 6px 20px rgba(21,73,200,.4)}
.form-submit svg{width:15px;height:15px;stroke:#fff;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.form-disc{font-size:11.5px;color:var(--g400);text-align:center;margin-top:14px;line-height:1.55}
.form-disc a{color:var(--blue)}
.form-success{background:var(--green-l);border:1px solid rgba(0,168,120,.25);border-radius:8px;padding:18px 20px;display:none;color:#065F46;font-size:14px;font-weight:600;text-align:center;margin-top:16px;align-items:center;justify-content:center;gap:8px}
.form-success.show{display:flex}
.form-success svg{width:16px;height:16px;stroke:#065F46;fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}

/* FOOTER */

/* UTILITY */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1)}
.reveal.in{opacity:1;transform:none}
.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}.d5{transition-delay:.40s}

/* RESPONSIVE */
@media(max-width:960px){
  .nav-center,.nav-right{display:none}
  .ham-btn{display:flex}
  .pd-layout{grid-template-columns:1fr;padding:40px 24px}
  section{padding:60px 24px}
  .nav{padding:0 24px}
  .page-hero{padding:48px 24px 40px}
  .form-row{grid-template-columns:1fr}
  .form-card{padding:28px 20px}
}
@media(max-width:640px){
  .ind-use-cases{grid-template-columns:1fr}
  .ind-stats{grid-template-columns:repeat(2,1fr)}
}

.nav-item:hover .nav-drop{opacity:1;pointer-events:all;transform:translateX(-50%) translateY(0);transition-delay:0s}

/* TRUST BAR */
.trust-strip{background:#060E1C;border-bottom:1px solid rgba(255,255,255,.05);padding:7px 48px;display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;font-size:12px;font-weight:600;color:rgba(200,215,255,.55);letter-spacing:.3px;position:fixed;top:var(--nh);left:0;right:0;z-index:999}
.trust-strip-item{display:flex;align-items:center;gap:6px;white-space:nowrap}
.trust-strip-item svg{width:11px;height:11px;flex-shrink:0}
.trust-strip-sep{width:1px;height:12px;background:rgba(255,255,255,.1)}
body{padding-top:calc(var(--nh) + 32px)!important}

/* A+ BADGE IN NAV */
.nav-badge{display:flex;align-items:center;gap:6px;background:rgba(21,73,200,.18);border:1px solid rgba(21,73,200,.35);border-radius:7px;padding:5px 11px;cursor:default}
.nav-badge-icon{width:18px;height:18px;background:var(--blue);border-radius:4px;display:flex;align-items:center;justify-content:center;font-family:var(--fh);font-size:8px;font-weight:900;color:#fff;letter-spacing:-.3px;flex-shrink:0}
.nav-badge-text{font-size:11px;font-weight:700;color:rgba(150,185,255,.85);letter-spacing:.3px;line-height:1.2}

/* FOOTER CREDENTIALS */

/* CHAT WIDGET */
.chat-widget{position:fixed;bottom:24px;right:24px;width:48px;height:48px;border-radius:50%;background:var(--blue);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(21,73,200,.5);z-index:9999;transition:all .2s}
.chat-widget:hover{transform:scale(1.08);box-shadow:0 8px 28px rgba(21,73,200,.65)}
.chat-widget svg{width:20px;height:20px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* ── ENTERPRISE FOOTER OVERRIDES ── */

/* Enterprise credentials - no bubbly icons */

/* Clean trust strip */

/* Enterprise social icons */

/* Product spec box - enterprise color treatment */
.pd-spec{background:linear-gradient(160deg,#0E1A30 0%,#0A1526 100%);border:1px solid rgba(255,255,255,.08)}
.pd-spec-title{color:rgba(255,255,255,.25)!important;font-size:9.5px!important;letter-spacing:2px!important}
.pd-row{border-bottom-color:rgba(255,255,255,.055)!important}
.pd-key{color:rgba(255,255,255,.38)!important;font-size:13px!important;font-weight:400!important}
.pd-val{color:rgba(255,255,255,.88)!important;font-size:13.5px!important;font-weight:600!important;letter-spacing:-.2px}
.pd-val.green{color:#34D99A!important}
/* Ensure no bright blue in spec values */

/* ═══ GLOBAL FIXES ═══ */
html, body { background: #070E1C !important; }
section, .wrap { position: relative; }

/* White gap elimination */
.page-hero { margin-top: 0 !important; }
body { padding-top: calc(var(--nh) + 40px) !important; }
.trust-strip { padding: 7px 48px; min-height: 0; }

.nav-drop.drop-open {
  opacity: 1 !important;
  pointer-events: all !important;
  transform: translateX(-50%) translateY(0) !important;
}
/* Hover bridge - invisible area between button and dropdown */
.nav-item::after {
  content: '';
  position: absolute;
  bottom: -12px;
  left: -10px;
  right: -10px;
  height: 12px;
  background: transparent;
  z-index: 1001;
}

/* ─── MEGA MENU for Industries ─── */
.nav-mega { min-width: 720px !important; padding: 6px !important; left: 50% !important; transform: translateX(-50%) translateY(0) !important; }
.nav-mega.drop-open { opacity: 1 !important; pointer-events: all !important; transform: translateX(-50%) translateY(0) !important; }
.nav-mega-cols { display: grid; grid-template-columns: 1fr 1fr 1fr; }
.nav-mega-col { padding: 4px; }
.nav-mega-col + .nav-mega-col { border-left: 1px solid rgba(255,255,255,.07); }
.nav-mega-footer { border-top: 1px solid rgba(255,255,255,.07); padding: 6px 4px 2px; margin-top: 4px; }
.nav-mega-footer a { color: rgba(100,160,255,.85) !important; font-weight: 600 !important; font-size: 12.5px; }
/* ─── PRODUCTS MEGA MENU ─── */
.nav-prod-mega { min-width: 520px !important; padding: 6px !important; }
.nav-prod-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 0; }
.nav-prod-col { padding: 4px; }
.nav-prod-col + .nav-prod-col { border-left: 1px solid rgba(255,255,255,.07); }

/* ─── DARK CARD TEXT FIX ─── */
.pd-spec .qual-list li,
.pd-spec .qual-list li svg { color: rgba(255,255,255,.72) !important; }
.pd-spec .qual-list li svg { stroke: #34D99A !important; }
/* Also fix for industry page dark cards */
[style*="background:var(--ink)"] .qual-list li { color: rgba(255,255,255,.72) !important; }
[style*="background:var(--ink)"] .qual-list li svg { stroke: #34D99A !important; }

/* ─── INDUSTRIES INDEX VISUAL UPGRADE ─── */
.ind-hub-card {
  background: #fff;
  border: 1px solid var(--g200);
  border-radius: 14px;
  padding: 22px 20px;
  display: block;
  text-decoration: none;
  transition: all .22s;
  position: relative;
  overflow: hidden;
}
.ind-hub-card::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 2px;
  background: var(--blue);
  transform: scaleX(0);
  transition: transform .22s;
  transform-origin: left;
}
.ind-hub-card:hover { transform: translateY(-3px); box-shadow: 0 8px 28px rgba(7,14,28,.1); border-color: rgba(21,73,200,.22); }
.ind-hub-card:hover::after { transform: scaleX(1); }
.ind-hub-icon { width: 40px; height: 40px; border-radius: 9px; background: var(--blue-p); border: 1px solid rgba(21,73,200,.12); display: flex; align-items: center; justify-content: center; margin-bottom: 12px; transition: all .22s; }
.ind-hub-icon svg { width: 18px; height: 18px; stroke: var(--blue); fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
.ind-hub-card:hover .ind-hub-icon { background: rgba(21,73,200,.12); transform: scale(1.08); }
.ind-hub-name { font-family: var(--fh); font-size: 14.5px; font-weight: 700; color: var(--ink); margin-bottom: 4px; transition: color .18s; }
.ind-hub-card:hover .ind-hub-name { color: var(--blue); }
.ind-hub-sub { font-size: 12px; color: var(--g400); line-height: 1.5; }
.ind-hub-link { font-size: 12px; font-weight: 600; color: var(--blue); margin-top: 12px; display: flex; align-items: center; gap: 3px; }

/* ===== Footer (clean rebuild 2026-05-08) ===== */
.footer{background:var(--ink);position:relative}
.footer::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(21,73,200,.45) 30%,rgba(91,155,255,.55) 50%,rgba(21,73,200,.45) 70%,transparent)}
.footer-main{max-width:1240px;margin:0 auto;padding:48px 40px 32px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1fr;gap:32px}
.footer-col-title{font-size:10.5px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:rgba(255,255,255,.34);margin-bottom:16px}
.footer-brand-logo{display:flex;align-items:center;gap:10px;text-decoration:none;margin-bottom:14px}
.footer-brand-mark{width:32px;height:32px;border-radius:7px;background:var(--blue);display:flex;align-items:center;justify-content:center}
.footer-brand-mark svg{width:17px;height:17px;stroke:#fff;fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.footer-brand-name{font-family:var(--fh);font-weight:700;font-size:16px;color:#fff;letter-spacing:-.2px}
.footer-brand-name span{color:rgba(255,255,255,.42);font-weight:500}
.footer-brand-tag{font-size:13px;color:rgba(255,255,255,.45);line-height:1.65;margin:0 0 16px;max-width:300px}
.footer-socials{display:flex;gap:7px}
.footer-social{width:32px;height:32px;border-radius:7px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09);display:flex;align-items:center;justify-content:center;transition:all .18s;cursor:pointer;text-decoration:none}
.footer-social:hover{background:var(--blue);border-color:var(--blue)}
.footer-social svg{width:14px;height:14px;stroke:rgba(255,255,255,.55);fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;transition:stroke .18s}
.footer-social:hover svg{stroke:#fff}.footer-social svg path[stroke="none"]{fill:rgba(255,255,255,.55);transition:fill .18s}.footer-social:hover svg path[stroke="none"]{fill:#fff}
.footer-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px}
.footer-list li{font-size:13px;color:rgba(255,255,255,.55);line-height:1.5}
.footer-list a{font-size:13px;color:rgba(255,255,255,.55);text-decoration:none;transition:color .15s}
.footer-list a:hover{color:#fff}
.footer-bottom{max-width:1240px;margin:0 auto;padding:14px 40px;border-top:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.footer-copy{font-size:11.5px;color:rgba(255,255,255,.34)}
.footer-legal-links{display:flex;gap:18px}
.footer-legal-links a{font-size:11.5px;color:rgba(255,255,255,.42);text-decoration:none;transition:color .15s}
.footer-legal-links a:hover{color:#fff}
.footer-discl{max-width:1240px;margin:0 auto;padding:0 40px 20px;font-size:11px;color:rgba(255,255,255,.24);line-height:1.6}
@media (max-width:1024px){.footer-main{grid-template-columns:1fr 1fr 1fr;gap:28px 24px;padding:36px 28px 24px}}@media (max-width:768px){.footer-main{grid-template-columns:1fr 1fr;gap:28px 24px;padding:36px 20px 24px}.footer-brand{grid-column:1/-1;text-align:left}.footer-trust,.footer-bottom,.footer-discl{padding-left:20px;padding-right:20px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:8px}}
@media (max-width:480px){.footer-main{grid-template-columns:1fr;gap:24px}}
