:root{--bg:#f7f9fd;--bg-2:#eef3fb;--text:#142033;--muted:#5f6e85;--line:rgba(20,32,51,.08);--shadow:0 20px 60px rgba(96,129,190,.15);--shadow-soft:0 12px 34px rgba(96,129,190,.10);--accent:#5d8cff;--accent-2:#9d7fff;--accent-3:#8ee7ff;--radius:28px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Inter',system-ui,sans-serif;color:var(--text);background:radial-gradient(circle at 10% 0%, rgba(142,231,255,.26), transparent 25%),radial-gradient(circle at 90% 5%, rgba(157,127,255,.2), transparent 22%),linear-gradient(180deg,#fcfdff,#f4f8ff 45%,#edf3fb 100%);overflow-x:hidden}#bg3d{position:fixed;inset:0;z-index:-1;pointer-events:none}.loader{position:fixed;inset:0;z-index:9999;background:linear-gradient(180deg,#ffffff,#eef4ff);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;transition:opacity .8s ease,visibility .8s ease}.loader.hidden{opacity:0;visibility:hidden}.loader-mark{width:84px;height:84px;border-radius:28px;background:linear-gradient(145deg, rgba(255,255,255,.8), rgba(244,249,255,.65));box-shadow:var(--shadow);display:grid;place-items:center;animation:loaderFloat 2.2s ease-in-out infinite}.loader-mark img{width:58px;height:58px}.loader-bar{width:min(260px,72vw);height:8px;border-radius:999px;overflow:hidden;background:#dbe7ff}.loader-bar span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--accent),var(--accent-2),var(--accent-3));animation:progress 2.3s ease forwards}.loader p{color:var(--muted);margin:0}.cursor-dot,.cursor-ring{position:fixed;top:0;left:0;pointer-events:none;z-index:10000;transform:translate(-50%,-50%);mix-blend-mode:multiply}.cursor-dot{width:10px;height:10px;border-radius:50%;background:var(--accent)}.cursor-ring{width:38px;height:38px;border:1px solid rgba(93,140,255,.45);border-radius:50%;transition:width .2s,height .2s,border-color .2s}.site-header{position:sticky;top:0;z-index:1000;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px min(4vw,32px);backdrop-filter:blur(18px);background:rgba(255,255,255,.48);border-bottom:1px solid var(--line)}.site-header nav{display:flex;flex-wrap:wrap;gap:16px}.site-header nav a,.brand{text-decoration:none;color:var(--text)}.site-header nav a{font-weight:600;color:var(--muted)}.site-header nav a:hover{color:var(--accent)}.brand{display:flex;align-items:center;gap:14px}.brand img{width:48px;height:48px;filter:drop-shadow(0 12px 18px rgba(93,140,255,.18))}.brand strong{display:block}.brand span{font-size:.82rem;color:var(--muted)}main{width:min(1200px,92vw);margin:0 auto}.section{padding:72px 0}.section-head{max-width:760px;margin-bottom:28px}.section-head h2{font-size:clamp(2rem,4vw,3.25rem);line-height:1.05;margin:.1rem 0 1rem}.subhead,.lead,p{color:var(--muted);line-height:1.72}.eyebrow{display:inline-block;margin-bottom:12px;font-size:.8rem;text-transform:uppercase;letter-spacing:.18em;font-weight:800;background:linear-gradient(90deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.glass{background:linear-gradient(180deg, rgba(255,255,255,.76), rgba(255,255,255,.48));backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.8);box-shadow:var(--shadow-soft);border-radius:var(--radius)}.hero{min-height:calc(100vh - 90px);display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center}.hero h1{font-size:clamp(2.3rem,4.6vw,4.9rem);line-height:1.02;margin:.2rem 0 1rem}.hero-copy,.hero-visual{position:relative}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0 18px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:15px 22px;font-weight:700;text-decoration:none;transition:transform .2s ease, box-shadow .2s ease, background .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 16px 30px rgba(93,140,255,.25)}.btn-secondary{color:var(--text);background:rgba(255,255,255,.7);border:1px solid var(--line)}.hero-pill-row{display:flex;flex-wrap:wrap;gap:10px}.pill,.project-tags span{padding:10px 14px;border-radius:999px;font-size:.86rem;font-weight:600;background:rgba(255,255,255,.68);border:1px solid rgba(93,140,255,.12);color:#38507c}.logo-orb{min-height:360px;display:grid;place-items:center;position:relative;overflow:hidden;perspective:1000px}.logo-orb img{width:min(60%,260px);animation:spinY 12s linear infinite;filter:drop-shadow(0 28px 30px rgba(93,140,255,.18))}.orb-glow{position:absolute;inset:auto 16% 14% 16%;height:40px;border-radius:50%;background:radial-gradient(circle, rgba(93,140,255,.3), transparent 70%);filter:blur(26px)}.floating-card{position:absolute;width:230px;padding:18px}.floating-card small{display:block;color:var(--muted);margin-bottom:6px}.fc-one{top:8%;right:-2%;animation:float 5s ease-in-out infinite}.fc-two{left:-2%;bottom:10%;animation:float 6s ease-in-out infinite .4s}.about-grid,.gateway-grid,.insight-grid,.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.about-card,.gateway,.insight-card,.detail-card,.contact-panel,.search-panel,.timeline-item{padding:22px}.gateway{display:flex;flex-direction:column;text-decoration:none;color:var(--text);gap:8px;transition:transform .25s ease, box-shadow .25s ease}.gateway:hover,.about-card:hover,.insight-card:hover,.detail-card:hover,.timeline-item:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.gateway span{color:var(--muted)}.search-panel{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;margin-bottom:20px}.search-panel label{display:block;margin-bottom:10px;font-weight:700}.search-panel input{width:100%;border:1px solid rgba(93,140,255,.18);background:rgba(255,255,255,.84);border-radius:18px;padding:16px;font-size:1rem;outline:none}.smart-tags{display:flex;flex-wrap:wrap;gap:10px;align-content:flex-start}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-card-wrap{text-decoration:none;color:inherit;perspective:1200px}.project-card{min-height:320px}.project-card-inner{position:relative;width:100%;height:100%;min-height:320px;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.project-card-wrap:hover .project-card-inner{transform:rotateY(180deg)}.project-face{position:absolute;inset:0;backface-visibility:hidden;overflow:hidden;padding:22px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(255,255,255,.84)}.project-front{background:radial-gradient(circle at top right, rgba(142,231,255,.2), transparent 30%),linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.56))}.project-back{transform:rotateY(180deg);background:radial-gradient(circle at bottom left, rgba(157,127,255,.18), transparent 28%),linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.6))}.project-badge{display:inline-block;align-self:flex-start;font-size:.78rem;padding:8px 12px;border-radius:999px;background:rgba(93,140,255,.1);color:#5674c3;font-weight:700}.project-face h3{font-size:1.45rem;margin:14px 0 6px}.project-back ul{margin:0;padding-left:18px;color:var(--muted)}.project-back li{margin-bottom:10px}.view-link{font-weight:800;color:#4966b5}.skill-cluster{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.skill-orb{min-height:120px;display:grid;place-items:center;text-align:center;padding:18px;font-weight:800;color:#294371;position:relative;overflow:hidden;transform-style:preserve-3d;animation:skillFloat 5.6s ease-in-out infinite}.skill-orb:nth-child(2n){animation-delay:.5s}.skill-orb:nth-child(3n){animation-delay:1s}.skill-orb::before{content:"";position:absolute;inset:8px;border-radius:22px;border:1px solid rgba(93,140,255,.08)}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:18px}.split-card{padding:26px}.feature-list{margin:0;padding-left:18px;color:var(--muted)}.feature-list li{margin-bottom:10px}.bar-chart{display:flex;align-items:flex-end;gap:14px;height:180px;margin-top:18px}.bar-chart div{flex:1;height:var(--h);border-radius:18px 18px 10px 10px;background:linear-gradient(180deg,var(--accent-3),var(--accent),var(--accent-2));position:relative;min-height:42px}.bar-chart span{position:absolute;bottom:-28px;left:50%;transform:translateX(-50%);font-size:.82rem;color:var(--muted)}.metric-list{display:grid;gap:14px}.metric-list div{display:flex;justify-content:space-between;font-weight:700}.timeline-stack{display:grid;gap:16px}.timeline-item{position:relative;padding-left:24px}.timeline-item span{font-weight:800;color:#5172c6}.timeline-item::before{content:"";position:absolute;top:20px;left:10px;width:2px;height:calc(100% - 12px);background:linear-gradient(var(--accent),transparent)}.contact-panel{text-align:center;padding:34px}.contact-links{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:20px}.contact-link{text-decoration:none;color:var(--text);font-weight:700;padding:14px 18px;border-radius:999px;background:rgba(255,255,255,.7);border:1px solid var(--line);transition:transform .2s ease, box-shadow .2s ease}.contact-link:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft)}.site-footer{padding:12px 0 44px;text-align:center;color:var(--muted)}.detail-page .detail-hero{padding-top:42px}.detail-page .detail-grid{grid-template-columns:1.1fr .9fr}.back-link{display:inline-block;margin-bottom:18px;color:#516cb2;text-decoration:none;font-weight:700}.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s ease, transform .8s ease}.reveal.show{opacity:1;transform:translateY(0)}@keyframes progress{from{width:0}to{width:100%}}@keyframes loaderFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes skillFloat{0%,100%{transform:translateY(0) rotateX(0) rotateY(0)}50%{transform:translateY(-10px) rotateX(8deg) rotateY(-8deg)}}@keyframes spinY{0%{transform:rotateY(0)}100%{transform:rotateY(360deg)}}@media (max-width:1050px){.hero,.about-grid,.gateway-grid,.project-grid,.skill-cluster,.insight-grid,.detail-grid,.split-section{grid-template-columns:1fr 1fr}}@media (max-width:740px){.site-header{flex-direction:column;align-items:flex-start}.hero,.about-grid,.gateway-grid,.project-grid,.skill-cluster,.insight-grid,.detail-grid,.split-section,.search-panel{grid-template-columns:1fr}.hero{padding-top:24px}.floating-card{position:relative;width:auto;top:auto;left:auto;right:auto;bottom:auto;margin-top:16px}.cursor-dot,.cursor-ring{display:none}}

.chatbot-panel,
.lead-form{
  padding:24px;
}

.chatbot-messages{
  display:flex;
  flex-direction:column;
  gap:12px;
  max-height:320px;
  overflow:auto;
  margin-bottom:16px;
  padding-right:4px;
}

.chat-msg{
  max-width:85%;
  padding:14px 16px;
  border-radius:18px;
  line-height:1.6;
  font-size:.95rem;
}

.chat-msg.bot{
  background:rgba(255,255,255,.78);
  border:1px solid rgba(93,140,255,.12);
  color:#294371;
}

.chat-msg.user{
  align-self:flex-end;
  background:linear-gradient(135deg,var(--accent),var(--accent-2));
  color:#fff;
}

.chatbot-input-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
}

.chatbot-input-row input,
.lead-form input,
.lead-form textarea{
  width:100%;
  border:1px solid rgba(93,140,255,.18);
  background:rgba(255,255,255,.86);
  border-radius:18px;
  padding:16px;
  font-size:1rem;
  outline:none;
  color:var(--text);
}

.form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-bottom:14px;
}

.lead-form textarea{
  resize:vertical;
  margin-bottom:14px;
}

.form-status{
  margin-top:12px;
  font-weight:600;
  color:#4966b5;
}

@media (max-width:740px){
  .chatbot-input-row,
  .form-grid{
    grid-template-columns:1fr;
  }
}