/* Bharat Infocom — editorial, trust-first Indian IT agency theme */
:root{--bg:#fff;--surface:#fff;--surface2:#f5f7fb;--text:#17233b;--muted:#66738a;--line:#e3e8f0;--blue:#174ea6;--blue2:#0f397d;--accent:#ef8b26;--mint:#e9f5f2;--max:1180px;--shadow:0 16px 45px rgba(20,42,80,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.7;transition:background .25s,color .25s}body.dark{--bg:#101827;--surface:#172236;--surface2:#1c2a40;--text:#f3f6fc;--muted:#b4c0d2;--line:#2d3b52;--blue:#9bbdff;--blue2:#c6d8ff;--accent:#ffb15c;--mint:#203b3d;--shadow:0 16px 45px rgba(0,0,0,.22)}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.wrap{width:min(var(--max),calc(100% - 44px));margin:auto}.mono,.eyebrow{font-size:.74rem;letter-spacing:.09em;text-transform:uppercase;font-weight:750}.eyebrow{color:var(--blue);display:inline-flex;align-items:center;gap:10px}.eyebrow:before{content:"";height:2px;width:24px;background:var(--accent)}.gradient{color:var(--blue)}.muted{color:var(--muted)}
.topbar{background:#102d59;color:#eaf1ff;padding:8px 0;font-size:.78rem}.topbar .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.nav{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--bg) 96%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.navinner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:-.04em;font-size:1.12rem;white-space:nowrap}.brandmark{width:42px;height:42px;border-radius:9px;background:var(--blue);display:grid;place-items:center;color:white;font-size:1.35rem;font-weight:900;box-shadow:0 5px 14px #174ea626}.brand small{display:block;font-size:.62rem;letter-spacing:.12em;color:var(--muted);font-weight:700}.navlinks{display:flex;align-items:center;gap:25px;font-size:.9rem;font-weight:650;color:var(--text)}.navlinks>a,.dropbtn{transition:color .2s}.navlinks>a:hover,.dropbtn:hover{color:var(--blue)}.dropdown{position:relative}.dropbtn{background:none;border:0;color:var(--text);display:flex;align-items:center;gap:7px;font-weight:650;padding:14px 0}.chevron{transition:transform .2s}.dropdown.open .chevron{transform:rotate(180deg)}.dropmenu{display:none;position:absolute;top:calc(100% - 1px);left:-190px;width:610px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 22px 55px #102d5920;overflow:hidden;z-index:50}.dropdown.open .dropmenu,.dropdown:hover .dropmenu,.dropdown:focus-within .dropmenu{display:block;animation:menuRise .18s ease both}.dropmenu:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--blue),var(--accent))}.dropmenu-head{padding:21px 23px 13px;background:var(--surface2)}.dropmenu-head strong{display:block;font-size:1.05rem;margin:4px 0}.dropmenu-head small{color:var(--muted)}.dropmenu-grid{display:grid;grid-template-columns:1fr 1fr;padding:10px;gap:4px}.service-menu-item{display:grid;grid-template-columns:42px minmax(0,1fr) 15px;align-items:center;gap:11px;padding:12px;border-radius:8px;transition:background .2s,color .2s}.service-menu-item:hover{background:var(--surface2)}.menu-icon{width:42px;height:42px;border-radius:9px;display:grid;place-items:center;background:#eaf1fc;color:var(--blue);font-size:1.1rem;font-weight:800}.dark .menu-icon{background:#263b5d}.service-menu-item b{display:block;font-size:.84rem}.service-menu-item small{display:block;color:var(--muted);font-size:.73rem;line-height:1.4;margin-top:2px}.menu-arrow{color:var(--blue);opacity:0;transition:opacity .2s,transform .2s}.service-menu-item:hover .menu-arrow{opacity:1;transform:translate(2px,-2px)}.dropmenu-all{display:flex;justify-content:space-between;padding:13px 22px;background:var(--surface2);font-size:.85rem;font-weight:750;color:var(--blue)}.navactions{display:flex;align-items:center;gap:10px}.themebtn,.menu-toggle{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:8px;width:39px;height:39px}.menu-toggle{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:7px;font-weight:750;font-size:.88rem;border:1px solid transparent;transition:transform .2s,background .2s,box-shadow .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 5px 14px #174ea622}.btn-primary:hover{background:var(--blue2);box-shadow:0 9px 24px #174ea62c}.btn-outline{border-color:var(--line);background:var(--surface);color:var(--text)}.btn-outline:hover{border-color:var(--blue);color:var(--blue)}
.hero{padding:76px 0 72px;background:linear-gradient(105deg,var(--bg) 0%,var(--bg) 63%,var(--surface2) 63%,var(--surface2) 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:58px;align-items:center}.hero h1,.page-hero h1{font-size:clamp(2.55rem,5vw,4.4rem);letter-spacing:-.055em;line-height:1.08;margin:18px 0 20px;max-width:740px}.hero p{font-size:1.08rem;color:var(--muted);max-width:610px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.microtrust{display:flex;flex-wrap:wrap;gap:15px 23px;margin-top:27px;color:var(--muted);font-size:.8rem}.microtrust span:before{content:"✓";color:#25866c;font-weight:900;margin-right:7px}.visual{min-height:380px;position:relative;display:grid;place-items:center;border-radius:16px;background:#eaf0f8;overflow:hidden;border:1px solid #dbe4f1}.dark .visual{background:#1b2c46;border-color:var(--line)}.visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#174ea60a 1px,transparent 1px),linear-gradient(90deg,#174ea60a 1px,transparent 1px);background-size:28px 28px}.visual-art{width:86%;position:relative;z-index:1;filter:drop-shadow(0 22px 30px #102d591c);animation:floatGentle 7s ease-in-out infinite}.float-card{position:absolute;z-index:2;background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:12px 15px;box-shadow:var(--shadow);font-size:.82rem}.float-card b{display:block}.float-card .mono{font-size:.63rem;color:var(--blue)}.fc1{top:11%;left:5%}.fc2{right:4%;top:43%}.fc3{bottom:9%;left:12%}.orbit,.orb{display:none}
.section{padding:78px 0}.section.alt{background:var(--surface2)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:31px}.section-head h2,.section h2{font-size:clamp(1.9rem,3.5vw,2.8rem);letter-spacing:-.045em;line-height:1.17;margin:10px 0 13px}.section-head>p{max-width:460px;color:var(--muted);margin:0 0 5px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{position:relative;padding:25px;background:var(--surface);border:1px solid var(--line);border-radius:11px;transition:transform .25s,border-color .25s,box-shadow .25s;min-width:0}.card:hover{transform:translateY(-4px);border-color:#b6c9e8;box-shadow:var(--shadow)}.card-icon{width:48px;height:48px;border-radius:10px;display:grid;place-items:center;background:#edf3fd;color:var(--blue);font-weight:850;font-size:.88rem;margin-bottom:19px}.dark .card-icon{background:#263b5d}.card h3{font-size:1.08rem;letter-spacing:-.02em;margin:0 0 8px}.card p{font-size:.9rem;color:var(--muted);margin:0 0 17px}.arrowlink{color:var(--blue);font-weight:750;font-size:.85rem}.arrowlink:hover{text-decoration:underline;text-underline-offset:4px}.actions .btn{margin-top:3px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:28px 0}.stat{border-top:2px solid var(--line);padding-top:13px}.stat b{display:block;color:var(--blue);font-size:1.6rem}.stat span{font-size:.82rem;color:var(--muted)}.code-panel{background:#102d59;color:#e6efff;padding:24px;border-radius:12px;box-shadow:var(--shadow);font: .88rem/2 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:hidden}.codebar{display:flex;gap:6px;border-bottom:1px solid #ffffff25;padding-bottom:17px;margin-bottom:18px}.dot{width:9px;height:9px;background:#ed9c4c;border-radius:50%}.dot:nth-child(2){background:#7fc4ad}.dot:nth-child(3){background:#8baef0}.purple{color:#f7bc72}.green{color:#a6e2c7}.pink{color:#d8c4ff}.cta-band{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:35px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:12px;box-shadow:var(--shadow)}.cta-band h2{margin:8px 0}.cta-band p{margin:0}.page-hero{padding:62px 0 55px;background:var(--surface2);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.2rem,4vw,3.55rem);margin:14px 0}.page-hero p{color:var(--muted);font-size:1.04rem;max-width:740px}.breadcrumbs{font-size:.78rem;color:var(--muted);margin-bottom:25px}.breadcrumbs a{color:var(--blue)}.pill,.tag{display:inline-block;border:1px solid var(--line);border-radius:5px;padding:5px 9px;margin:4px 5px 0 0;font-size:.75rem;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:25px}.contact-item{padding:15px 0;border-bottom:1px solid var(--line)}.contact-item b{display:block}.form{display:grid;gap:14px}.field{display:grid;gap:6px}.field label{font-weight:700;font-size:.84rem}.field input,.field textarea,.field select{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:7px;background:var(--bg);color:var(--text);outline:none}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #174ea618}.field textarea{min-height:130px;resize:vertical}.notice,.legal-note{padding:15px;border-radius:8px;background:var(--surface2);border:1px solid var(--line);color:var(--muted);font-size:.86rem}.content{max-width:850px}.content h2{margin-top:35px}.content h3{margin-top:24px}.content p,.content li{color:var(--muted)}.ecosystem-card{overflow:hidden}.ecosystem-card .card-icon{width:auto;height:auto;min-height:70px;justify-content:start;background:transparent;color:var(--blue);font-size:1rem}.footer{background:#10213e;color:#eaf1ff;padding:58px 0 20px}.footer .brand small{color:#bdcbe0}.footer p{color:#c2cde0;font-size:.87rem;max-width:320px}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr 1fr 1.1fr;gap:30px}.footer h4{margin:4px 0 15px;font-size:.9rem}.footer-links{display:grid;gap:8px}.footer-links a{color:#c2cde0;font-size:.83rem}.footer-links a:hover{color:#fff}.footer .arrowlink{color:#ffbc77}.footbottom{border-top:1px solid #ffffff25;margin-top:38px;padding-top:18px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;color:#c2cde0;font-size:.78rem}.footbottom a{color:#fff;text-decoration:underline;text-underline-offset:3px}.backtop{position:fixed;right:20px;bottom:20px;width:42px;height:42px;border:0;border-radius:8px;background:var(--blue);color:white;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(8px);transition:.2s;z-index:15}.backtop.show{opacity:1;pointer-events:auto;transform:none}.reveal{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s ease}.reveal.visible{opacity:1;transform:none}
@keyframes menuRise{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes floatGentle{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@media(max-width:1000px){.navlinks{gap:15px}.navlinks .dropmenu{left:-180px}.hero-grid{gap:30px}.footer-grid{grid-template-columns:1.2fr 1fr;gap:28px}}
@media(max-width:900px){.navinner{height:70px}.menu-toggle{display:block}.navactions>.btn{display:none}.navlinks{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 18px 35px #102d5918;padding:15px 22px 22px;max-height:calc(100dvh - 100px);overflow:auto;align-items:stretch;gap:5px;flex-direction:column}.navlinks.show{display:flex}.navlinks>a{padding:12px 10px;border-radius:7px}.navlinks>a:hover{background:var(--surface2)}.dropdown{width:100%}.dropbtn{width:100%;justify-content:space-between;padding:13px 10px;border:1px solid var(--line);border-radius:7px}.dropmenu{display:none;position:static;width:100%;margin:8px 0 5px;box-shadow:none;border-radius:8px;animation:none}.dropdown.open .dropmenu{display:block}.dropdown:hover .dropmenu{display:none}.dropdown.open:hover .dropmenu{display:block}.dropmenu-head{padding:16px}.dropmenu-grid{grid-template-columns:1fr 1fr;padding:7px}.service-menu-item{grid-template-columns:38px minmax(0,1fr) 12px;padding:9px}.menu-icon{width:38px;height:38px}.menu-arrow{opacity:1}.hero{padding:55px 0;background:var(--bg)}.hero-grid{grid-template-columns:1fr}.visual{min-height:330px}.hero h1{max-width:780px}.section{padding:62px 0}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head{align-items:start;flex-direction:column;gap:8px}.contact-grid{grid-template-columns:1fr}.cta-band{align-items:flex-start;flex-direction:column}}
@media(max-width:580px){.wrap{width:min(var(--max),calc(100% - 30px))}.topbar .wrap{font-size:.7rem}.topbar .wrap span:first-child{display:none}.brand{font-size:1rem}.brandmark{width:38px;height:38px}.hero{padding:43px 0}.hero h1{font-size:2.55rem}.hero p{font-size:1rem}.visual{min-height:285px}.float-card{padding:9px 11px;font-size:.72rem}.fc1{top:8%;left:3%}.fc2{right:2%;top:47%}.fc3{bottom:7%;left:5%}.grid{grid-template-columns:1fr}.section{padding:50px 0}.section-head h2,.section h2{font-size:2rem}.dropmenu-grid{grid-template-columns:1fr}.service-menu-item{padding:10px}.footer-grid{grid-template-columns:1fr;gap:25px}.footbottom{flex-direction:column}.stats{grid-template-columns:repeat(2,1fr)}.cta-band{padding:25px}.page-hero{padding:42px 0}.page-hero h1{font-size:2.3rem}.actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* ===== Premium motion & black / crimson night theme ===== */
:root{--motion-red:#e23b45;--motion-red2:#ff684a;--motion-glow:rgba(226,59,69,.18)}
body.dark{
  --bg:#08090d;--surface:#101116;--surface2:#15161d;--text:#f5f5f7;--muted:#a4a6b1;--line:#292a33;
  --blue:#ff626c;--blue2:#ff858b;--accent:#ff3e49;--mint:#251417;
  --shadow:0 20px 55px rgba(0,0,0,.48),0 0 28px rgba(226,59,69,.055);
  background:radial-gradient(ellipse at 88% 0%,rgba(110,14,27,.22),transparent 34%),radial-gradient(ellipse at 4% 36%,rgba(67,12,23,.13),transparent 30%),#08090d;
}
body.dark .topbar{background:linear-gradient(100deg,#190b10,#321017 52%,#180a0e);border-bottom:1px solid #61202b}
body.dark .nav{background:rgba(8,9,13,.88);border-bottom-color:#292029}
body.dark .brandmark{background:linear-gradient(135deg,#ef3447,#7f1427);box-shadow:0 7px 24px rgba(226,59,69,.24)}
body.dark .hero{background:linear-gradient(112deg,rgba(8,9,13,.98) 0%,rgba(8,9,13,.98) 58%,rgba(42,10,17,.72) 100%)}
body.dark .visual{background:linear-gradient(145deg,#171117,#0e1017 55%,#250d14);border-color:#3d2028}
body.dark .visual:before{background-image:linear-gradient(rgba(255,80,92,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,80,92,.055) 1px,transparent 1px)}
body.dark .code-panel{background:linear-gradient(135deg,#170d13,#0c0d12 65%,#2a0c14);border:1px solid #3c2028}
body.dark .btn-primary{background:linear-gradient(115deg,#d72d42,#a61e35);box-shadow:0 8px 22px rgba(196,35,58,.2)}
body.dark .btn-primary:hover{background:linear-gradient(115deg,#ef4052,#c22640);box-shadow:0 12px 28px rgba(226,59,69,.28)}
body.dark .eyebrow,body.dark .gradient,body.dark .arrowlink{color:#ff737b}
body.dark .eyebrow:before{background:linear-gradient(90deg,#ff3649,#ff9a67)}
body.dark .card,body.dark .cta-band,body.dark .float-card{background:linear-gradient(145deg,rgba(20,20,27,.98),rgba(13,14,19,.98));border-color:#30252b}
body.dark .card{isolation:isolate;overflow:hidden;transition:transform .32s cubic-bezier(.2,.75,.25,1),border-color .3s,box-shadow .3s}
body.dark .card:before{content:"";position:absolute;inset:0;padding:1px;border-radius:inherit;background:linear-gradient(125deg,transparent 8%,rgba(255,67,82,.08) 28%,rgba(255,111,83,.38) 48%,rgba(255,67,82,.04) 68%,transparent 90%);background-size:220% 220%;animation:cardBorderFlow 8s ease-in-out infinite;pointer-events:none;z-index:-1;opacity:.75}
body.dark .card:after{content:"";position:absolute;width:160px;height:160px;right:-100px;top:-105px;border-radius:50%;background:radial-gradient(circle,rgba(226,59,69,.16),transparent 70%);pointer-events:none;transition:transform .45s,opacity .45s;opacity:.55}
body.dark .card:hover{transform:translateY(-7px);border-color:rgba(255,83,96,.56);box-shadow:0 18px 40px rgba(0,0,0,.42),0 0 25px rgba(226,59,69,.1)}
body.dark .card:hover:after{transform:translate(-18px,20px) scale(1.5);opacity:1}
body.dark .card-icon,body.dark .menu-icon{color:#ff7c83;background:linear-gradient(145deg,#32151d,#1b1118);border:1px solid #4b222d;box-shadow:inset 0 1px rgba(255,255,255,.035),0 5px 18px rgba(226,59,69,.06);transition:transform .3s,background .3s,box-shadow .3s}
body.dark .card:hover .card-icon{transform:translateY(-3px) rotate(-3deg);background:linear-gradient(145deg,#481923,#241117);box-shadow:0 7px 22px rgba(226,59,69,.16)}
body.dark .stat{border-top-color:#3b252d}
body.dark .stat b{color:#ff727b}
body.dark .page-hero{background:linear-gradient(120deg,#111116,#1d0e14 85%);border-color:#322029}
body.dark .section.alt{background:linear-gradient(130deg,#0c0d12,#110c11 70%,#170b10)}
body.dark .cta-band{border-left-color:#ed3c4d}
body.dark .dropmenu{background:#111116;border-color:#34232a;box-shadow:0 24px 65px rgba(0,0,0,.6),0 0 35px rgba(226,59,69,.07)}
body.dark .dropmenu:before{background:linear-gradient(90deg,#b71f35,#ff5963,#ff9867)}
body.dark .dropmenu-head,body.dark .dropmenu-all{background:#171219}
body.dark .service-menu-item:hover{background:#21131a}
body.dark .field input:focus,body.dark .field textarea:focus,body.dark .field select:focus{border-color:#e84b5a;box-shadow:0 0 0 3px rgba(226,59,69,.14)}
body.dark .pill,body.dark .tag{border-color:#38252d}
body.dark .footer{background:#07080b;border-top:1px solid #292029}
body.dark .backtop{background:linear-gradient(135deg,#d72d42,#8f172c);box-shadow:0 8px 22px rgba(226,59,69,.25)}

/* Subtle color travel for cards in both themes; reduced-motion is respected below. */
.card{transform:translateZ(0);will-change:transform,border-color,box-shadow}
.card-icon{transition:transform .3s cubic-bezier(.2,.75,.25,1),background .3s,color .3s}
.card:hover .card-icon{transform:translateY(-2px)}
@keyframes cardBorderFlow{0%,100%{background-position:0% 50%;opacity:.45}50%{background-position:100% 50%;opacity:.95}}
@keyframes redAmbient{0%,100%{opacity:.35;transform:scale(.94)}50%{opacity:.75;transform:scale(1.08)}}
body.dark .visual:after{content:"";position:absolute;width:250px;height:250px;right:-100px;bottom:-150px;border-radius:50%;background:radial-gradient(circle,rgba(226,59,69,.2),transparent 68%);animation:redAmbient 9s ease-in-out infinite;pointer-events:none}
body.dark .float-card{border-color:#38252d;box-shadow:0 14px 35px rgba(0,0,0,.38)}
body.dark .fc1 .mono,body.dark .fc2 .mono,body.dark .fc3 .mono{color:#ff737b}
body.dark .btn-outline:hover{border-color:#e84b5a;color:#ff777f;background:#1c1116}
@media(prefers-reduced-motion:reduce){body.dark .card:before,body.dark .visual:after{animation:none!important}.card, .card-icon{will-change:auto}}

/* Premium motion layer — animated light gradients, 3D depth and restrained red brand accents */
:root{--accent:#f04452;--red:#ed2639;--red-deep:#9d1026;--motion-glow:rgba(240,68,82,.16)}
body{background-image:radial-gradient(ellipse at 12% 0%,rgba(240,68,82,.055),transparent 34%),radial-gradient(ellipse at 88% 12%,rgba(56,116,211,.055),transparent 32%);background-attachment:fixed}
.gradient{background:linear-gradient(105deg,#b9162b 0%,#f04452 35%,#ff8b65 62%,#a52bda 100%);background-size:240% 240%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:brandGradientFlow 9s ease infinite}
.hero{position:relative;background:linear-gradient(110deg,#fff 0%,#fff 57%,#fff5f5 78%,#f1f5ff 100%);isolation:isolate}
.hero:before{content:"";position:absolute;z-index:-1;inset:-25% -10%;background:linear-gradient(115deg,transparent 25%,rgba(240,68,82,.07),rgba(98,92,224,.07),transparent 72%);background-size:220% 220%;animation:ambientGradient 15s ease infinite;pointer-events:none}
.visual{background:linear-gradient(135deg,#fff 0%,#fff6f7 38%,#eef4ff 100%);box-shadow:0 25px 70px rgba(20,42,80,.11),inset 0 1px rgba(255,255,255,.9);transform-style:preserve-3d}
.visual:after{content:"";position:absolute;inset:10% 12%;border-radius:50%;background:radial-gradient(ellipse,rgba(240,68,82,.14),transparent 67%);filter:blur(24px);animation:softPulse 7s ease-in-out infinite;pointer-events:none}
.visual-art{transform:translateZ(24px);filter:drop-shadow(0 28px 24px rgba(20,25,45,.16))}
.card{isolation:isolate;overflow:hidden;transform-style:preserve-3d;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 91%,var(--accent) 9%));box-shadow:0 5px 20px rgba(20,42,80,.035);transition:transform .45s cubic-bezier(.2,.8,.2,1),border-color .35s,box-shadow .4s}
.card:before{content:"";position:absolute;inset:-1px;padding:1px;border-radius:inherit;background:linear-gradient(125deg,transparent 10%,rgba(240,68,82,.42),rgba(92,112,235,.28),transparent 78%);background-size:230% 230%;opacity:0;pointer-events:none;z-index:-1;transition:opacity .35s;animation:cardShimmer 7s linear infinite;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude}
.card:hover{transform:perspective(900px) translateY(-8px) rotateX(1deg);border-color:rgba(240,68,82,.42);box-shadow:0 24px 48px rgba(22,35,62,.13),0 0 0 1px rgba(240,68,82,.045)}
.card:hover:before{opacity:1}.card-icon{box-shadow:0 8px 20px rgba(240,68,82,.08);background:linear-gradient(145deg,#fff0f1,#eef3ff);color:#d82339;transform:translateZ(16px)}
.btn-primary{background:linear-gradient(110deg,#d71935,#f04452 52%,#ff765e);background-size:180% 180%;animation:buttonGradient 8s ease infinite;box-shadow:0 8px 22px rgba(220,35,57,.2)}
.btn-primary:hover{box-shadow:0 12px 28px rgba(220,35,57,.3)}
.section.alt{background:linear-gradient(115deg,#f6f8fc,#fff7f7 55%,#f4f5ff);background-size:220% 220%;animation:lightSectionFlow 22s ease infinite}
.page-hero{background:linear-gradient(115deg,#fff5f6,#f7f9ff,#fff);background-size:220% 220%;animation:lightSectionFlow 20s ease infinite}
.cta-band{background:linear-gradient(120deg,var(--surface),color-mix(in srgb,var(--surface) 90%,#f04452 10%));box-shadow:0 20px 50px rgba(20,42,80,.08),inset 0 1px rgba(255,255,255,.7)}
@keyframes brandGradientFlow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes ambientGradient{0%,100%{background-position:0% 50%;transform:rotate(0deg)}50%{background-position:100% 50%;transform:rotate(1.5deg)}}
@keyframes cardShimmer{0%{background-position:0% 50%}100%{background-position:230% 50%}}
@keyframes buttonGradient{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes lightSectionFlow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes softPulse{0%,100%{opacity:.55;transform:scale(.9)}50%{opacity:1;transform:scale(1.08)}}
/* Dark theme: deep black surfaces, cinematic crimson gradient and controlled glow */
body.dark{--bg:#07080b;--surface:#101116;--surface2:#141116;--text:#f7f5f6;--muted:#b5abb0;--line:#302128;--blue:#ff6976;--blue2:#ff9a8f;--accent:#ff4b5f;--shadow:0 22px 58px rgba(0,0,0,.48);background-image:radial-gradient(ellipse at 8% 0%,rgba(225,24,53,.13),transparent 34%),radial-gradient(ellipse at 92% 18%,rgba(133,17,47,.12),transparent 32%)}
body.dark .hero{background:linear-gradient(112deg,#08090c 0%,#0c0a0e 58%,#1c080e 100%)}
body.dark .hero:before{background:linear-gradient(115deg,transparent 15%,rgba(244,38,62,.15),rgba(128,21,52,.11),transparent 80%)}
body.dark .visual{background:linear-gradient(135deg,#0c0c11,#1c0a11 56%,#10131b);border-color:#3c1c27;box-shadow:0 25px 70px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.035)}
body.dark .visual:before{background-image:linear-gradient(#ff475b0b 1px,transparent 1px),linear-gradient(90deg,#ff475b0b 1px,transparent 1px)}
body.dark .card{background:linear-gradient(145deg,#111116,#160d12 78%,#110f15);border-color:#302128;box-shadow:0 10px 28px rgba(0,0,0,.24)}
body.dark .card:before{background:linear-gradient(125deg,transparent 10%,rgba(255,62,83,.72),rgba(172,37,99,.42),transparent 78%)}
body.dark .card:hover{border-color:#a92b40;box-shadow:0 24px 50px rgba(0,0,0,.48),0 0 28px rgba(238,39,63,.12)}
body.dark .card-icon{background:linear-gradient(145deg,#35121d,#1b1017);color:#ff737f;box-shadow:0 8px 24px rgba(240,39,64,.12)}
body.dark .section.alt,body.dark .page-hero{background:linear-gradient(115deg,#09090d,#13090e 55%,#100d13);background-size:220% 220%}
body.dark .cta-band{background:linear-gradient(120deg,#101116,#1b0b11);border-color:#34202a;border-left-color:#f04452}
body.dark .btn-primary{background:linear-gradient(110deg,#a50f2a,#ef3049 52%,#ff695f);background-size:180% 180%}
@media(prefers-reduced-motion:reduce){.gradient,.hero:before,.visual:after,.card:before,.btn-primary,.section.alt,.page-hero{animation:none!important}.card,.visual-art{transform:none!important}}


/* Bharat Infocom premium red/white visual refresh — shared by every page */
:root{--bg:#fff;--surface:#fff;--surface2:#f7f7f8;--text:#17171b;--muted:#65656f;--line:#e7e7eb;--blue:#ed1c2e;--blue2:#c90f22;--accent:#ff5a36;--mint:#fff0f0;--shadow:0 18px 50px rgba(34,12,18,.09)}
body.dark{--bg:#070709;--surface:#101014;--surface2:#171116;--text:#f7f4f5;--muted:#b6aeb2;--line:#302126;--blue:#ff3548;--blue2:#d7192d;--accent:#ff6848;--mint:#271116;--shadow:0 20px 55px rgba(0,0,0,.38)}
body{background-image:radial-gradient(ellipse at 8% 0%,rgba(255,64,87,.045),transparent 35%);}
body.dark{background-image:radial-gradient(ellipse at 85% 0%,rgba(237,28,46,.14),transparent 32%),linear-gradient(180deg,#070709,#0a080a 60%,#070709)}
.topbar{background:#151014;color:#f9f4f5}.brandmark{background:linear-gradient(135deg,#ff3548,#b90019);box-shadow:0 7px 22px rgba(237,28,46,.28)}
.eyebrow{color:var(--blue)}.eyebrow:before{background:linear-gradient(90deg,#ed1c2e,#ff7a45)}
.gradient{background:linear-gradient(100deg,#e8142b 0%,#ff4b43 45%,#c21b52 75%,#f16a36 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:brandGradient 8s ease-in-out infinite}
.btn-primary{background:linear-gradient(115deg,#f21d34,#d10e27 55%,#ff553e);background-size:200% 100%;box-shadow:0 8px 22px rgba(225,19,44,.2);color:#fff}.btn-primary:hover{background-position:100% 0;box-shadow:0 12px 30px rgba(225,19,44,.32)}
.btn-outline:hover,.navlinks>a:hover,.dropbtn:hover,.arrowlink,.breadcrumbs a{color:var(--blue)}
.hero{background:linear-gradient(112deg,var(--bg) 0%,var(--bg) 58%,color-mix(in srgb,#ff3548 5%,var(--surface2)) 58%,var(--surface2) 100%);position:relative}
body.dark .hero{background:radial-gradient(ellipse at 80% 25%,rgba(237,28,46,.12),transparent 42%),linear-gradient(112deg,#08080a 0%,#08080a 58%,#160c10 58%,#110b0e 100%)}
.visual{background:#f8f3f4;border-color:#f0dfe2;box-shadow:0 22px 65px rgba(134,15,35,.12);perspective:1000px}.visual:before{background-image:linear-gradient(rgba(237,28,46,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(237,28,46,.045) 1px,transparent 1px)}
body.dark .visual{background:linear-gradient(145deg,#160d11,#09090c);border-color:#48202a;box-shadow:0 25px 70px rgba(237,28,46,.12)}
.visual-art{width:100%;height:100%;max-height:410px;object-fit:cover;border-radius:12px;transform:translateZ(24px);animation:floatGentle 8s ease-in-out infinite;mix-blend-mode:multiply}.dark .visual-art{mix-blend-mode:normal}.hero-globe-img{object-position:center}
.float-card{backdrop-filter:blur(14px);border-color:color-mix(in srgb,var(--blue) 20%,var(--line));box-shadow:0 16px 40px rgba(50,10,20,.12)}
.card{border-radius:13px;box-shadow:0 5px 20px rgba(22,15,20,.025);overflow:hidden;transition:transform .32s cubic-bezier(.2,.8,.2,1),border-color .32s,box-shadow .32s;background:var(--surface)}
.card:hover{transform:translateY(-7px);border-color:color-mix(in srgb,var(--blue) 48%,var(--line));box-shadow:0 18px 42px rgba(163,16,39,.12)}
.card-icon,.menu-icon{background:linear-gradient(145deg,#fff0f1,#ffe2e5);color:#df172d;border:1px solid #ffd1d7;box-shadow:inset 0 1px 0 #fff}
body.dark .card-icon,body.dark .menu-icon{background:linear-gradient(145deg,#321018,#1b0b10);color:#ff6674;border-color:#63202d;box-shadow:inset 0 1px 0 #ffffff08}
.dropmenu:before{background:linear-gradient(90deg,#e8142b,#ff6848,#bd1b4e)}.dropmenu{box-shadow:0 28px 70px rgba(30,8,14,.2);border-radius:14px}.service-menu-item:hover{background:color-mix(in srgb,var(--blue) 7%,var(--surface2))}
.page-hero{background:radial-gradient(ellipse at 90% 0%,rgba(237,28,46,.07),transparent 36%),var(--surface2)}body.dark .page-hero{background:radial-gradient(ellipse at 90% 0%,rgba(237,28,46,.14),transparent 38%),#0d0a0c}
.section.alt{background:linear-gradient(135deg,var(--surface2),color-mix(in srgb,#ff3548 2%,var(--surface2)))}
.code-panel{background:radial-gradient(ellipse at 100% 0%,#51121f,#170b10 48%,#0a090b);border:1px solid #55202a;box-shadow:0 22px 55px rgba(120,8,28,.18)}.dot{background:#ff3449}.dot:nth-child(2){background:#ff8d60}.dot:nth-child(3){background:#f7d3d7}.purple{color:#ff9ca7}.green{color:#ffc1a2}.pink{color:#ff6379}
.cta-band{border-left-color:var(--blue);background:linear-gradient(110deg,var(--surface),color-mix(in srgb,#ed1c2e 4%,var(--surface)));}
.stat b{color:var(--blue)}.ecosystem-card{padding-top:25px}.ecosystem-card .card-icon{max-width:100%;width:max-content;height:auto;min-height:42px;padding:10px 12px;font-size:.68rem;letter-spacing:.04em}
.service-thumb{display:block;width:calc(100% + 50px);height:145px;object-fit:cover;margin:-25px -25px 22px;background:var(--surface2);transition:transform .5s,filter .5s}.service-card:hover .service-thumb{transform:scale(1.035);filter:saturate(1.1)}
@keyframes brandGradient{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes softGlow{0%,100%{box-shadow:0 8px 22px rgba(225,19,44,.12)}50%{box-shadow:0 12px 34px rgba(225,19,44,.25)}}
@media(max-width:700px){.hero{background:var(--bg)}body.dark .hero{background:radial-gradient(ellipse at 80% 10%,rgba(237,28,46,.12),transparent 42%),var(--bg)}.visual{min-height:280px}.visual-art{max-height:320px}.service-thumb{height:165px}.section{padding:56px 0}}
@media(prefers-reduced-motion:no-preference){.btn-primary{animation:softGlow 6s ease-in-out infinite}.card-icon{transition:transform .3s,box-shadow .3s}.card:hover .card-icon{transform:translateY(-2px) rotate(-3deg);box-shadow:0 8px 22px rgba(237,28,46,.16)}}
@media(prefers-reduced-motion:reduce){.gradient,.visual-art,.btn-primary{animation:none!important;transition:none!important}}

.service-page-art{width:100%;height:150px;object-fit:cover;border-radius:8px;margin-bottom:16px;opacity:.95}.service-page-panel{overflow:hidden}.service-page-panel .code-lines{font-size:.82rem}


/* BHARAT INFOCOM — Reference-matched premium design system */
:root{--bg:#fff;--surface:#fff;--surface2:#f5f5f7;--text:#17171b;--muted:#666873;--line:#e5e5e9;--blue:#e7192d;--blue2:#b90f24;--accent:#ff594b;--mint:#fff0f0;--max:1240px;--shadow:0 18px 48px rgba(23,10,14,.09)}
body{font-family:Inter,Manrope,"Segoe UI",Arial,sans-serif;background-color:var(--bg);background-image:radial-gradient(ellipse at 5% 2%,rgba(231,25,45,.055),transparent 28%),radial-gradient(ellipse at 95% 30%,rgba(255,104,75,.035),transparent 25%)}
.topbar{background:#0a0a0d;color:#e9e9ed}.nav{box-shadow:0 5px 24px rgba(12,8,10,.045)}.brandmark{background:linear-gradient(145deg,#ff394b,#b60b21);border-radius:10px;box-shadow:0 8px 22px rgba(231,25,45,.24)}
.navlinks>a:hover,.dropbtn:hover,.arrowlink,.breadcrumbs a{color:#e7192d}.btn-primary{background:linear-gradient(110deg,#ed1c2e,#ff3e46 55%,#e7192d);background-size:220% 220%;animation:biRedFlow 7s ease infinite;box-shadow:0 8px 22px rgba(231,25,45,.2)}.btn-primary:hover{box-shadow:0 12px 28px rgba(231,25,45,.3)}
.gradient{background:linear-gradient(100deg,#b90f24 0%,#ef2439 35%,#ff6650 65%,#c41438 100%);background-size:250% 250%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:biRedFlow 8s ease infinite}.eyebrow{color:#e7192d}.eyebrow:before{background:linear-gradient(90deg,#e7192d,#ff7757)}
.hero{background:linear-gradient(110deg,#08090c 0%,#0c0b10 57%,#210911 100%);color:#fff;position:relative;isolation:isolate}.hero:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 75% 40%,rgba(237,28,46,.2),transparent 35%),linear-gradient(110deg,transparent 20%,rgba(235,25,47,.09),transparent 75%);background-size:220% 220%;animation:biAmbient 15s ease infinite}.hero p,.hero .microtrust{color:#c5c4cc}.hero .btn-outline{background:rgba(255,255,255,.04);border-color:#4b3b40;color:#fff}.hero .btn-outline:hover{border-color:#ff4656;background:rgba(231,25,45,.1)}.hero .eyebrow{color:#ff5966}.hero h1{color:#fff}.hero .visual{background:linear-gradient(140deg,#0b0c10,#180b11 60%,#08090c);border-color:#3c2028;box-shadow:0 30px 80px rgba(0,0,0,.35),0 0 45px rgba(231,25,45,.08)}.visual:before{background-image:linear-gradient(#ff46550c 1px,transparent 1px),linear-gradient(90deg,#ff46550c 1px,transparent 1px)}.visual-art{filter:drop-shadow(0 25px 35px rgba(0,0,0,.38))}.float-card{background:rgba(15,13,18,.88);color:#fff;border-color:#4a252e;box-shadow:0 16px 38px rgba(0,0,0,.3)}.float-card .mono{color:#ff6874}
.section{position:relative}.section.alt{background:linear-gradient(115deg,#f7f7f9 0%,#fff6f6 50%,#f9f4f5 100%);background-size:220% 220%;animation:biLightFlow 24s ease infinite}.grid{gap:18px}.card{border:1px solid #e8e6e8;border-radius:13px;background:linear-gradient(145deg,#fff 0%,#fff 70%,#fff8f8 100%);box-shadow:0 8px 26px rgba(25,12,15,.045);transform-style:preserve-3d;transition:transform .42s cubic-bezier(.2,.8,.2,1),border-color .35s,box-shadow .4s}.card:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(125deg,transparent 8%,rgba(231,25,45,.5),rgba(255,116,83,.35),transparent 78%);background-size:230% 230%;opacity:0;pointer-events:none;animation:biBorderFlow 7s linear infinite;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude}.card:hover{transform:perspective(900px) translateY(-7px) rotateX(1deg);border-color:#ef9aa3;box-shadow:0 22px 48px rgba(60,10,20,.12),0 0 0 1px rgba(231,25,45,.04)}.card:hover:before{opacity:1}.card-icon{background:linear-gradient(145deg,#fff0f1,#ffe1e5);color:#d9152a;border:1px solid #ffd4da;box-shadow:0 8px 22px rgba(231,25,45,.08);transition:transform .35s,box-shadow .35s}.card:hover .card-icon{transform:translateY(-3px) rotate(-3deg);box-shadow:0 12px 24px rgba(231,25,45,.17)}
.service-thumb{border-radius:9px;object-fit:cover;filter:saturate(.95);transition:transform .55s,filter .4s}.service-card:hover .service-thumb{transform:scale(1.035);filter:saturate(1.1)}.ecosystem-card{position:relative}.ecosystem-card .card-icon{color:#e7192d;background:transparent;border:0;box-shadow:none}.ecosystem-card .card-icon:after{content:"↗";margin-left:auto;font-size:1.2rem}
.page-hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(110deg,#08090c 0%,#100b10 60%,#240a12 100%);color:#fff;border-bottom:1px solid #3a1d25;padding:58px 0 56px;min-height:220px}.page-hero:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 88% 35%,rgba(239,28,47,.23),transparent 28%),linear-gradient(115deg,transparent 20%,rgba(255,60,70,.07),transparent 80%)}.page-hero:after{content:"";position:absolute;z-index:-1;right:3%;top:50%;transform:translateY(-50%);width:min(34vw,390px);height:185px;background:url('../images/hero-globe.webp') center/contain no-repeat;opacity:.72;filter:drop-shadow(0 12px 28px rgba(240,20,45,.24));pointer-events:none}.page-hero .wrap{position:relative;z-index:1}.page-hero h1{color:#fff;max-width:760px}.page-hero p{color:#c9c4ca;max-width:670px}.breadcrumbs{color:#b5abb0}.breadcrumbs a{color:#ff6974}.page-hero .eyebrow{color:#ff6b76}
.code-panel{background:linear-gradient(135deg,#0b0c10,#170b11 68%,#260b13);border:1px solid #43212b;box-shadow:0 22px 55px rgba(25,5,10,.18);color:#f5f3f5}.codebar{border-bottom-color:#3b252d}.code-lines{color:#d9d3d8}.code-lines .purple{color:#ff7184}.code-lines .green{color:#ffc08e}.code-lines .pink{color:#ff5a69}.service-page-art{border-radius:10px;box-shadow:0 18px 38px rgba(0,0,0,.28)}
.cta-band{border:1px solid #f0dadd;border-left:4px solid #e7192d;background:linear-gradient(115deg,#fff,#fff5f6 70%,#ffecef);box-shadow:0 20px 55px rgba(55,10,20,.08)}.stats .stat{border-top-color:#f1cbd0}.stats .stat b{color:#e7192d}.dropmenu{border-radius:14px;box-shadow:0 26px 75px rgba(20,4,9,.22)}.dropmenu:before{background:linear-gradient(90deg,#b90f24,#ff554f,#ff9364)}.menu-icon{background:linear-gradient(145deg,#fff0f1,#ffe0e5);color:#d7192e}.service-menu-item:hover{background:#fff3f4}.dropmenu-all{color:#d7192e;background:#fff6f7}.footer{background:#08090c;color:#f3f0f2;border-top:1px solid #27151b}.footer p,.footer-links a,.footbottom{color:#bcb5bb}.footer .brand small{color:#a9a0a6}.footer .arrowlink,.footbottom a{color:#ff6875}.backtop{background:linear-gradient(135deg,#f32b40,#a80f26);box-shadow:0 10px 26px rgba(231,25,45,.3)}
body.dark{--bg:#070709;--surface:#101014;--surface2:#171116;--text:#f7f4f5;--muted:#b6aeb2;--line:#302126;--blue:#ff3548;--blue2:#d7192d;--accent:#ff6848;--mint:#271116;--shadow:0 20px 55px rgba(0,0,0,.38);background-image:radial-gradient(ellipse at 8% 0%,rgba(225,24,53,.13),transparent 34%),radial-gradient(ellipse at 92% 18%,rgba(133,17,47,.12),transparent 32%)}body.dark .topbar{background:#030304}body.dark .hero{background:linear-gradient(110deg,#050507,#0d090d 58%,#220710)}body.dark .section.alt{background:linear-gradient(115deg,#0c0b0f,#160a10 55%,#100d13)}body.dark .card{background:linear-gradient(145deg,#111116,#160d12 78%,#110f15);border-color:#302128;box-shadow:0 10px 28px rgba(0,0,0,.24)}body.dark .card:before{background:linear-gradient(125deg,transparent 10%,rgba(255,62,83,.72),rgba(255,117,83,.35),transparent 78%)}body.dark .card:hover{border-color:#a92b40;box-shadow:0 24px 50px rgba(0,0,0,.48),0 0 28px rgba(238,39,63,.12)}body.dark .card-icon{background:linear-gradient(145deg,#35121d,#1b1017);color:#ff737f;border-color:#4b222d}body.dark .page-hero{background:linear-gradient(110deg,#050507,#10090d 60%,#220710);border-color:#322029}body.dark .cta-band{background:linear-gradient(115deg,#101014,#1a0d12);border-color:#38212a;border-left-color:#ed2639}body.dark .dropmenu{background:#111116;border-color:#34232a}body.dark .dropmenu-head,body.dark .dropmenu-all{background:#171219}body.dark .service-menu-item:hover{background:#21131a}body.dark .menu-icon{background:linear-gradient(145deg,#35121d,#1b1017);color:#ff737f}body.dark .footer{background:#030304}
@keyframes biRedFlow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes biAmbient{0%,100%{background-position:0% 50%;transform:translateX(0)}50%{background-position:100% 50%;transform:translateX(1%)}}@keyframes biLightFlow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes biBorderFlow{0%{background-position:0% 50%}100%{background-position:230% 50%}}
@media(max-width:900px){.page-hero:after{right:-7%;width:300px;opacity:.22}.hero{background:linear-gradient(110deg,#08090c,#160910)}.hero-grid{gap:28px}.hero .visual{min-height:300px}}
@media(max-width:580px){.page-hero{padding:42px 0;min-height:190px}.page-hero:after{right:-80px;width:230px;height:145px;opacity:.16}.hero h1{font-size:2.45rem}.card{border-radius:11px}.section.alt{animation-duration:35s}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

.ecosystem-thumb{display:block;width:100%;height:150px;object-fit:cover;border-radius:9px;margin-bottom:15px;box-shadow:0 8px 22px rgba(25,8,12,.1);transition:transform .55s,filter .4s}.ecosystem-card:hover .ecosystem-thumb{transform:scale(1.025);filter:saturate(1.12)}body.dark .ecosystem-thumb{filter:brightness(.82) saturate(.95)}body.dark .ecosystem-card:hover .ecosystem-thumb{filter:brightness(.95) saturate(1.1)}@media(max-width:580px){.ecosystem-thumb{height:175px}}

/* Brand-matched service icons and ecosystem wordmarks */
.card-icon.service-icon{display:grid;place-items:center;width:54px;height:54px;padding:10px;border-radius:13px;background:linear-gradient(145deg,#fff1f2,#ffe2e5);border:1px solid #ffd0d6;color:#e7192d}
.card-icon.service-icon img{display:block;width:32px;height:32px;object-fit:contain}
.ecosystem-brand{display:flex;align-items:center;min-height:70px;margin:0 0 12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(110deg,var(--surface),var(--surface2));overflow:hidden}
.ecosystem-brand img{display:block;max-width:100%;width:auto;height:48px;object-fit:contain;object-position:left center}
.ecosystem-card .ecosystem-brand{border:1px solid var(--line);box-shadow:inset 0 1px rgba(255,255,255,.5)}
body.dark .ecosystem-brand{background:linear-gradient(110deg,#141116,#1e1016);border-color:#3c222b}
body.dark .ecosystem-brand img{filter:drop-shadow(0 2px 8px rgba(255,45,65,.08))}

.menu-icon img{display:block;width:25px;height:25px}.menu-icon{display:grid;place-items:center}

/* Blog listing and editorial article pages */
.blog-grid{align-items:stretch}.blog-card{padding:0;display:flex;flex-direction:column}.blog-image-link{display:block;overflow:hidden;border-radius:10px 10px 0 0}.blog-thumb{width:100%;height:205px;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.2,.75,.25,1),filter .4s}.blog-card:hover .blog-thumb{transform:scale(1.045);filter:saturate(1.08)}.blog-card .blog-meta,.blog-card h2,.blog-card>p,.blog-card>.arrowlink{margin-left:22px;margin-right:22px}.blog-meta{display:flex;gap:12px;align-items:center;margin-top:18px;margin-bottom:8px;color:var(--muted);font-size:.76rem}.blog-meta span:first-child{color:var(--accent);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.blog-card h2{font-size:1.18rem;line-height:1.35;margin-top:0;margin-bottom:10px;letter-spacing:-.025em}.blog-card h2 a{color:var(--text);text-decoration:none}.blog-card h2 a:hover{color:var(--accent)}.blog-card>p{flex:1}.blog-card>.arrowlink{margin-bottom:22px}.article-layout{display:grid;grid-template-columns:minmax(0,800px) minmax(230px,310px);gap:36px;align-items:start}.blog-article{max-width:none}.article-hero{width:100%;max-height:420px;object-fit:cover;border-radius:14px;border:1px solid var(--line);margin:0 0 22px;box-shadow:var(--shadow)}.blog-article .article-intro{font-size:1.12rem;color:var(--text)}.blog-article h2{font-size:1.55rem;letter-spacing:-.03em}.article-takeaway{padding:22px;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:10px;background:var(--surface2);margin:28px 0}.article-takeaway p{margin-bottom:0}.article-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin-top:30px;padding-top:20px;border-top:1px solid var(--line)}.article-sidebar{display:grid;gap:16px;position:sticky;top:110px}.sidebar-link{display:block;padding:10px 0;border-bottom:1px solid var(--line);font-size:.87rem;color:var(--text)}.sidebar-link:last-child{border-bottom:0}.body.dark .blog-card h2 a{color:var(--text)}body.dark .article-takeaway{background:linear-gradient(135deg,#171116,#100d12)}@media(max-width:900px){.article-layout{grid-template-columns:1fr}.article-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:580px){.blog-thumb{height:190px}.blog-card h2{font-size:1.1rem}.article-sidebar{grid-template-columns:1fr}.article-footer .btn{width:100%}}
